1

チェックボックスをコントロールとして使用して、AJAX CollapsiblePanelExtender を折りたたみ/展開しようとした人はいますか?

チェックボックスをクリックすると、パネルがうまく折りたたまれます。ただし、チェックボックス自体はチェックされません。

それはあなたにも起こりましたか?

これを回避する方法があることは知っていますが、その理由を理解するまで休むことはできません。

誰かが見たい場合に備えて、コードは次のとおりです。

<asp:ScriptManager ID="ScriptManager1" runat="server"></asp:ScriptManager>    
<div class="standard"> 
    <asp:UpdatePanel ID="UpdatePanelBespokeRates" runat="server">
        <ContentTemplate>       
            <asp:CheckBox ID="checkbespoke" runat="server" AutoPostBack="False" Checked="false" Text="Click and unclick this checkbox" />
            </p>
            <asp:UpdatePanel ID="UpdatePanelBespoke" runat="server">
                <ContentTemplate>

                    <asp:CollapsiblePanelExtender ID="CollapsibleExtender2" runat="server" 
                        TargetControlID="PnlBespokeRates" CollapseControlID="checkbespoke" 
                        CollapsedSize="1" ExpandControlID="checkbespoke" SuppressPostBack="True" 
                        Enabled="True" Collapsed="True"></asp:CollapsiblePanelExtender>

                    <asp:Panel ID="PnlBespokeRates" runat="server" Visible="True" Height="300px" Width="200px" BackColor="White">
                         <p>Another Hello World text</p>   
                    </asp:Panel> 

                </ContentTemplate>
                <Triggers>
                    <asp:AsyncPostBackTrigger ControlID="checkbespoke" EventName="CheckedChanged" />
                </Triggers>
            </asp:UpdatePanel>

        </ContentTemplate>
    </asp:UpdatePanel>
    <p>
</div>

コードの背後にあるのは次のとおりです。

protected void Page_Load(object sender, EventArgs e)
    {
        CollapsibleExtender2.ClientState = "true";
        CollapsibleExtender2.Collapsed = true;
    }
4

2 に答える 2

0

asp:CheckBox 宣言から Checked="false" を削除してみてください。ポストバックトリガーがチェックボックスをリロードして再初期化している可能性があると思われます。

于 2012-10-29T11:16:10.190 に答える
0

うまくいったのは:

SuppressPostback="false"CollapsiblePanelExtender 属性で

Autopostback="true"チェックボックスコントロールで

すべての手動 C# を削除します

そして出来上がり。

于 2012-12-05T14:09:03.407 に答える