尝试扩展ASP.NET Panel控件时出错

时间:2016-02-23 08:19:26

标签: c# asp.net class

我正在尝试扩展System.Web.UI.WebControl.Panel控件。下面是我的.cs代码。

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'。

那么问题是什么? 我做错了什么?

1 个答案:

答案 0 :(得分:3)

注册控件时,还需要添加程序集名称。

   <%@ Register TagPrefix="xc" Namespace="WebApplication1" Assembly="WebApplication1" %>