自定义容器控件

时间:2010-12-03 14:49:47

标签: asp.net

我正在尝试创建一个CollapsiblePanel控件,它实际上只是一个面板,它有一个可用于展开/折叠主体的标题。我有一个关于它在页面上工作的例子(内联)但现在是什么使它成为一个可重复使用的控件,可以按如下方式使用

<cc:CollapsiblePanel runat="server" Header="This is a collapsible panel">  
    <asp:Label runat="server" Text="This is the contents of the panel" />  
</cc:CollapsiblePanel>

因此,我希望CollapsiblePanel呈现标题,容器的开头,然后是容器的内容(即本例中的标签),最后是容器的结尾。

我不确定如何正确地做到这一点。我已经看到一些覆盖渲染方法的例子,以便在正确的点插入控件,但它似乎非常黑客。

做这样的事情的'正确'方法是什么? (.NET 4.0,如果这有所不同)

1 个答案:

答案 0 :(得分:0)

覆盖渲染方法是执行此操作的最佳方法。您可以使用RenderBeginTag和RenderEndTag。