【发布时间】:2011-04-15 17:55:51
【问题描述】:
我是 ASP .NET Web 控件的新手,但不是一般的 ASP .NET 或 C#。
我想知道如何将允许的内容类型限制为特定的类。
我制作了一个名为 TabPanel 的自定义 Web 控件,我希望它只能包含 TabPages。
例如,以下标记应该是非法的,因为它包含一个复选框。
<cc1:TabPanel ID="TabPanel1" runat="server">
<cc1:TabPage runat="server">
this is a simple test
</cc1:TabPage>
<cc1:TabPage runat="server">
this is another simple test
</cc1:TabPage>
<asp:CheckBox runat="server" />
</cc1:TabPanel>
在这种情况下,我不希望复选框在那里。我怎样才能阻止这种情况发生?
【问题讨论】:
-
你的问题没有意义。
-
@John:我的假设是他们正在编写一个自定义控件,并且不希望容器接受 X 类型的控件(在本例中为 X=CheckBox)
-
也许你应该更有建设性。怎么没有意义?
-
我稍微改述了这个问题。应该更详细。
-
好的,如果您不希望复选框出现在此处,请不要将其放在那里。如果您说您不希望它在某些情况下出现,请解释这些是什么。隐藏复选框是否足够?还是要将其从控件集合中删除?你可以说 TabPanel1.Controls.Remove("idofcheckbox");对于您要删除它的条件。