【发布时间】:2012-01-04 01:27:43
【问题描述】:
基类包含字段“lbl”,但其类型(web.App_Code.CustomLabelControl)与控件类型(web.App_Code.CustomLabelControl)不兼容。
我以前用同样的方法做过很多自定义控件,但今天我遇到了这个错误。
我有一个 web 应用程序项目,在 App_Code 目录中有以下类,web.config 中的 tagprefix 引用用于类中的控件。
我现在该怎么办?
Web.Config
<system.web>
<pages>
<controls>
<add namespace="web.App_Code" tagPrefix="CControls"/>...
标记
<form id="form1" runat="server">
<div>
<CControls:CustomLabelControl runat="server" OnClickText="Welcome" ID="lbl">
</CControls:CustomLabelControl>
</div>
</form>
类文件
namespace web.App_Code
{
public class CustomLabelControl : Control, IPostBackEventHandler, IPostBackDataHandler
{
private string _onClickText;
public CustomLabelControl()
{
}
public string OnClickText
{
get { return _onClickText; }
set { _onClickText = value; }
}
public void RaisePostBackEvent(string eventArgument)
{
throw new System.NotImplementedException();
}
public bool LoadPostData(string postDataKey, NameValueCollection postCollection)
{
throw new System.NotImplementedException();
}
public void RaisePostDataChangedEvent()
{
throw new System.NotImplementedException();
}
}
}
我已经检查了这些资源:
【问题讨论】:
-
您是否尝试过从
System.Web.UI.WebControls.Label类而不是Control派生您的类? -
@CAbbott 您是否有充分的理由这样做?或者只是猜测
标签: c# asp.net postback web-controls app-code