So habe ich einen anderen Nudel-Scratcher (für mich jedenfalls).Meine Kontrolle ist "hier nicht erlaubt, weil es nicht Klasse erweitert System.Web.UI.UserControl"
Ich versuche, mein eigenes benutzerdefiniertes Steuerelement in einem CMS zu erstellen, ich habe nur teilweise Quellcode für (d. H. Proben, die der Anbieter an mich geliefert hat). Grundsätzlich habe ich eine Klasse namens DataDefinitionContent
erstellt, die ControlBase
erweitert. Nun, von dem, was ich von den Metadaten sammeln kann, ControlBase
erstreckt sich UserControl
, also hätte ich gedacht, dass dies ohne Drama laufen würde. Kann irgendjemand etwas darüber sagen, warum das bei mir nicht funktioniert?
Meine Klasse:
public partial class DataDefinitionContent : ControlBase, ICustomControl<DataDefinition>
{
... Stuff
}
Control:
using System;
using System.Web.UI;
namespace CMS.Web
{
public class ControlBase : UserControl
{
... Stuff
}
}
Meine ascx Datei:
<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="DataDefinitionContent.ascx.cs"
Inherits="CMS.Admin.WebUI.CustomControls.DataDefinitionContent, CoA.Admin.WebUI, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" %>
Der Fehler Ich erhalte:
Parser-Fehlermeldung: 'CMS.Admin.WebUI.CustomControls.DataDefinitionContent, CoA.Admin.WebUI, Version = 1.0.0.0, Culture = neutral, PublicKeyToken = null' ist hier nicht erlaubt, weil es tut nicht Klasse "System.Web.UI.UserControl" erweitern.
Zeile 1: <% @ Control Language = "C#" AutoEventWireup = "true" Codebehind = "DataDefinitionContent.ascx.cs"
Ist Ihre partielle Klasse in einem Namespace? –
Eigentlich nein, ist es nicht. Kannst du mir einen Hinweis geben, wie ich den Namensraum entziffern würde? (OP ist immer noch ein Neuling) –
Nun haben Sie = "CMS.Admin.WebUI.CustomControls.DataDefinitionContent, CoA.Admin.WebUI, Version = 1.0.0.0, Kultur = neutral, PublicKeyToken = null" in Ihrem Inherits, die ich nicht ' Ich glaube, du brauchst es. Der Namespace sieht wie CMS.Admin.WebUI.CustomControls aus, obwohl ControlBase wie in CMS.Web aussieht. –