私は別のヌードルスクラッチャー(私にとってはとにかく)を持っています。私のコントロールは "System.Web.UI.UserControl 'クラスを拡張しないのでここでは許可されていません"
CMSで独自のカスタムコントロールを作成しようとしていますが、部分ソースコード(ベンダーが提供してくれたサンプル)しかありません。基本的にDataDefinitionContent
というクラスを作成しました。このクラスはControlBase
です。今、私がメタデータから得られるものから、ControlBase
はUserControl
まで拡張されているので、これはドラマなしで動くと思ったでしょう。なぜこれが私のために働いていないかもしれないのか誰にも光を当てることができますか?
私のクラス:
public partial class DataDefinitionContent : ControlBase, ICustomControl<DataDefinition>
{
... Stuff
}
ControlBase:
using System;
using System.Web.UI;
namespace CMS.Web
{
public class ControlBase : UserControl
{
... Stuff
}
}
マイASCXファイル:
<%@ 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" %>
私は取得していますエラー:
パーサーエラーメッセージ: 'CMS.Admin.WebUI.CustomControls.DataDefinitionContent、 CoA.Admin.WebUI、バージョン= 1.0.0.0、 カルチャニュートラル、PublicKeyToken = = null' それがないので、ここでは許可されていません クラスを拡張しない 'System.Web.UI.UserControl'。
1行目:制御言語= "C#の" @ <% AutoEventWireup属性= "true" を分離コード= "DataDefinitionContent.ascx.cs"
あなたの部分クラスは名前空間内にありますか? –
実際、そうではありません。あなたは私がそれを置くべき名前空間をどのように解読するのかについて私に手がかりを与えることができますか? (OPは未だに初心者です) –
あなたの継承者には、 "CMS.Admin.WebUI.CustomControls.DataDefinitionContent、CoA.Admin.WebUI、Version = 1.0.0.0、Culture = neutral、PublicKeyToken = null"あなたが必要と思う。名前空間はCMS.Admin.WebUI.CustomControlsのように見えますが、コントロールベースはCMS.Webのように見えます –