如何为自定义控件定义默认“TagPrefix”

时间:2008-10-24 13:08:48

标签: asp.net

我正在尝试启用设计器支持的许多自定义控件。签名类似于以下内容:

[ToolboxData("<{0}:MyDropDownList runat=\"server\" CustomProp="123"></{0}:MyDropDownList>")]
public class MyDropDownList: DropDownList
{
   ... code here
}

这很好用,但是当我从工具箱中将控件拖到页面上时,添加的TagPrefix是“cc1”:

<%@ Register Assembly="DBMClientPortal.Controls" Namespace="DBMClientPortal.Controls"
    TagPrefix="cc1" %>

显然,TagPrefix是什么有点无关紧要...它的工作原理,但我认为我必须能够以某种方式改变它,好奇心让我变得更好...... / p>

在Visual Studio中将自定义控件拖到页面上时,任何人都知道如何定义TagPrefix的设置?

谢谢, 最大

2 个答案:

答案 0 :(得分:6)

它看起来像这样:

[assembly:TagPrefix("MyControls","RequiredTextBox")]

here's了解更多信息。

答案 1 :(得分:1)

仅供参考,TagPrefix属性只是Visual Studio和其他设计器工具的建议。如果用户已将您的命名空间注册到不同的标记前缀,则可以使用该标记前缀。此外,如果您的建议标记前缀已被使用并指向不同的命名空间,则Visual Studio将使用自动生成的标记前缀。

但是,如果您选择基于产品或公司名称的标记前缀,则其中任何一个发生的可能性都相当小。