【问题标题】:CollapsiblePanelExtender does not reactCollapsiblePanelExtender 没有反应
【发布时间】:2010-11-24 18:51:35
【问题描述】:

我正在使用带有复选框的CollapsiblePanelExtender。当复选框被选中和未选中时,我想让面板展开/折叠。这可行,但我遇到的问题是,当页面加载时,面板没有根据从数据库加载的状态相应地展开或折叠。换句话说,将CollapsiblePanelExtender int page_load 的 Collapsed 属性设置为 true 或 false 似乎不会影响它。

这就是我所拥有的:

<asp:CheckBox runat="server" ID="ServiceCheckBox" AutoPostBack="true" Enabled="true"
OnCheckedChanged="CheckBoxCheckedStatusChanged" />

<asp:CollapsiblePanelExtender
ID="ServiceCollapsiblePanelExtender"
runat="server"
TargetControlID ="ServicePanel"
CollapsedSize ="0"
Collapsed ="true"
CollapseControlID ="ServiceCheckBox"
ExpandControlID ="ServiceCheckBox" >

   //codebehind
    protected new void Page_Load(object sender, EventArgs e)
    {
      if (!IsPostBack)
      {
        ServiceCheckBox.Checked = GetState();

        ServiceCollapsiblePanelExtender.Collapsed = !ServiceCheckBox.Checked;
      }
   }

我宁愿使用服务器端事件而不是客户端脚本 (js)。 有人知道如何让这个工作吗?

【问题讨论】:

    标签: c# .net asp.net asp.net-ajax


    【解决方案1】:

    根据this link,您还需要更改 CollapsiblePanelExtender 的 ClientState:

    if(ServiceCheckBox.Checked)
    {
        ServiceCollapsiblePanelExtender.Collapsed = false;
        ServiceCollapsiblePanelExtender.ClientState = "false";
    }
    else
    {
        ServiceCollapsiblePanelExtender.Collapsed = true;
        ServiceCollapsiblePanelExtender.ClientState = "true";
    }
    

    【讨论】:

      猜你喜欢
      • 2021-11-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-10-28
      • 2020-10-22
      • 2016-06-17
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多