通用ServerControl语法?

时间:2009-05-14 13:14:20

标签: c# asp.net generics custom-server-controls

有没有办法让我可以拥有服务器控件

MyControl<T>

这样我就可以在像这样的aspx页面中注册和使用它

<mc:MyControl<ThingForControlToUse> ID="instanceOfMyControl" runat="server"

显然设计师并不喜欢这样,除了创建一个带有类型参数的非通用包装外,还有什么好的方法吗?

2 个答案:

答案 0 :(得分:6)

ASP.NET中无法使用通用标记名称,请参阅此文章:Generic Controls

您认为需要使用TYPE参数创建包装器,这是正确的方法。

答案 1 :(得分:0)

快速说明 - 我不确定在Visual Studio 2008中是否也是如此,但如果您在使用Visual Studio 2005编辑的项目中拥有该控件,则会完全破坏该控件的智能感知。当Visual Studio尝试创建用于标记文件中的intellisense弹出窗口的XML模式文件时,它会在看到像这样的通用控件时完全中断,并且完全放弃模式文件,使得该程序集中的任何控件都没有智能感知。