2010-06-23 65 views
3

我正在设计一个基于CompositeControl的ASP.NET v3.5自定义控件。如何在设计时获得复合控件的子控件

不过,我不想通过代码来创建我的子控件,但在ASPX页面的CompositeControl的范围内,而不是作为 嵌入HTML标记元素,如:

<cc:MyCompositeControl ID="MyControl"> 
    <asp:Label>Cat</asp:Label> 
    <asp:Label>Cat</asp:Label> 
</cc:MyCompositeControl> 

在运行时,MyControl。按预期,控件包含两个标签。

在设计时,MyControl.Controls为空。

由于各种原因,我在设计时需要此信息。

我在做什么错?

+0

这正是我的问题。实际上,当我们在web.config中注册tagprefix并在UserControl内部使用CompositeControl和另一个父UserControl时,就发生了这种情况。 – CallMeLaNN 2012-02-27 05:20:59

回答

0

您可能会考虑使用Reflector在System.Web DLL中查看System.Web.UI.WebControls.Panel控件。这将帮助您了解哪些属性以及需要哪些属性装饰来提供您所需的设计时支持。