2010-12-03 113 views
0

我試圖創建一個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如果有所不同)

回答

0

覆蓋渲染方法是最好的方法來做到這一點。你會使用RenderBeginTag和RenderEndTag。

+0

問題是,我正在使用Ajax Control Toolkit中的CollapsiblePanelExtender,它將擁有一些相當複雜的渲染邏輯。不幸的是,這不僅僅是前後編寫幾個div的案例。 :) – Barg 2010-12-03 15:09:07