2011-09-03 21 views
0

我有一個aspx頁面,其中包含一些collapsiblepanels,我希望用戶一次只能展開一個 - 所以如果panel1被展開,那麼panel2和panel3會自動關閉。無論如何要做到這一點?asp.net中的多個collapsiblepanel問題

<asp:button runat="server" id="btn1" text="test1"/> 
<asp:button runat="server" id="btn2" text="test2"/> 
<asp:button runat="server" id="btn3" text="test3"/> 
<asp:penel id="pnl1" runat="server">Panel 1 content</panel> 
<asp:CollapsiblePanelExtender ID="cpe1" runat="Server" TargetControlID="pnl1" 
ExpandControlID="btn1" CollapseControlID="btn1" Collapsed="True"/> 
<asp:penel id="pnl2" runat="server">Panel 2 content</panel> 
<asp:CollapsiblePanelExtender ID="cpe2" runat="Server" TargetControlID="pnl2" 
ExpandControlID="btn2" CollapseControlID="btn2" Collapsed="True"/> 
<asp:penel id="pnl3" runat="server">Panel 3 content</panel> 
<asp:CollapsiblePanelExtender ID="cpe3" runat="Server" TargetControlID="pnl3" 
ExpandControlID="btn3" CollapseControlID="btn3" Collapsed="True"/> 
+0

你好朋友我得到了答案,如果任何budy想要回答通知我。 –

+0

自己發佈答案並將其標記爲正確以幫助他人。 – TheCodeKing

回答

0

一次打開一個面板先給behaviorID每個可摺疊的面板,並使用JavaScript來關閉所有其他然後對當前事件的OnClientClick。

<script type="text/javascript"> 
    function closePanel(con1,con2) { 
    $find(con1)._doClose(); 
    $find(con2)._doClose();} 
    </script> 
    <asp:button OnClientClick="closePanel('colps2','colps3');" runat="server" id="btn1"  text="test1"/> 
    <asp:button OnClientClick="closePanel('colps1','colps3');" runat="server" id="btn2" text="test2"/> 
    <asp:button OnClientClick="closePanel('colps1','colps2');" runat="server" id="btn3" text="test3"/> 
    <asp:penel id="pnl1" runat="server">Panel 1 content</panel> 
    <asp:CollapsiblePanelExtender ID="cpe1" runat="Server" TargetControlID="pnl1" 
    ExpandControlID="btn1" CollapseControlID="btn1" Collapsed="True"  BehaviorID="colps1"/> 
    <asp:penel id="pnl2" runat="server">Panel 2 content</panel> 
    <asp:CollapsiblePanelExtender ID="cpe2" runat="Server" TargetControlID="pnl2" 
    ExpandControlID="btn2" CollapseControlID="btn2" Collapsed="True" BehaviorID="colps2"/> 
    <asp:penel id="pnl3" runat="server">Panel 3 content</panel> 
    <asp:CollapsiblePanelExtender ID="cpe3" runat="Server" TargetControlID="pnl3" 
    ExpandControlID="btn3" CollapseControlID="btn3" Collapsed="True" BehaviorID="colps3"/>