System.Web.UI.Control如何在页面上使用

时间:2012-07-10 16:35:26

标签: asp.net parsing controls

我创建了一个自定义ASP.Net控件:

namespace Chart2GoWeb.WebUI.UserControls
{
    public class NavigationBarControl : Control
    {
        protected override void Render(HtmlTextWriter output)
        {
            ...
        }
    }
}

现在是时候在aspx页面上使用它了。我试过添加:

<%@ Register Namespace='Chart2GoWeb.WebUI.UserControls' TagPrefix='c2gwwc'%>    

到页面,然后使用控件:

<c2gwwc:NavigationBarControl runat=server></c2gwwc:NavigationBarControl>

我收到错误:

分析程序错误消息:未知的服务器标记'c2gwwc:NavigationBarControl'。

我该如何解决这个问题?

3 个答案:

答案 0 :(得分:1)

c2gwwc应与标记前缀TagPrefix="asp"

匹配

你不应该扩展WebControl而不是控制吗?我不是专业人士,但看起来不对。

答案 1 :(得分:0)

用这个

替换你的自定义asp控件标记
<asp:NavigationBarControl runat=server></asp:NavigationBarControl>

更新答案: 如果您已创建自定义服务器控件,则必须将自定义服务器控件的dll添加到项目中。您还可以向Toobox添加自定义服务器控件,右键单击工具框,选择Control或类似的东西,将打开一个新的弹出窗口,选择您的dll,然后控件将出现在工具箱中。

答案 2 :(得分:0)

哇,我所要做的就是将'Assembly =“Chart2GoWeb.WebUI”'添加到寄存器中并且它有效。它似乎不承担当前的组装。活到老,学到老。感谢大家的帮助。