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で違いがある場合)
問題は、Ajax Control ToolkitのCollapsiblePanelExtenderを使用しています。かなり複雑なレンダリングロジックを所有しています。残念なことに前後のdivを書くのは単なるケースではありません。 :) – Barg
その場合、おそらくレンダリングメソッドをオーバーライドする必要はありません。コンポジットコントロールを作成するだけで、パネルとエクステンダーをCreateChildControlsに追加し、エクステンダーのtagetIDをパネルのIDに設定することができます。 asp.netは、残りの世話をする必要があります。 – Mike