尝试扩展ASP.NET Panel控件时出现错误
问题描述:
我试图扩展System.Web.UI.WebControl.Panel
控件。以下是我的.cs代码。尝试扩展ASP.NET Panel控件时出现错误
namespace XControls
{
public class VisibilityChangedEventArgs : EventArgs
{
public bool Visible { get; private set; }
public VisibilityChangedEventArgs(bool visibility)
{
Visible = visibility;
}
}
public class XPanel : Panel
{
public EventHandler VisibleChanged;
public override bool Visible
{
get
{
return base.Visible;
}
set
{
base.Visible = value;
OnVisibleChanged();
}
}
protected void OnVisibleChanged()
{
if (VisibleChanged != null)
VisibleChanged(this, new VisibilityChangedEventArgs(Visible));
}
}
}
而在default.aspx
文件首先我注册我的XPanel。
<%@ Register TagPrefix="xc" Namespace="XControls" %>
然后在代码中尝试使用像这样。
<xc:XPanel runat="server" id="xp">
Hello XPanel
</xc:XPanel>
但是当我尝试在浏览器中运行这个,我得到一个错误:
服务器错误“/”应用。
解析器错误
描述:解析服务此请求所需的资源时发生错误。请检查以下特定的分析错误详细信息并适当修改您的源文件。
解析器错误消息:未知服务器标记'xc:XPanel'。
那么是什么问题? 我做错了什么?
答
当您注册控件时,您还需要添加程序集名称。
<%@ Register TagPrefix="xc" Namespace="WebApplication1" Assembly="WebApplication1" %>