未能在复选框上触发已检查事件

时间:2012-07-11 19:06:04

标签: asp.net

我有层次结构,我需要绑定到父级的复选框和1级孩子的复选框列表。

不知怎的,我无法进入复选框(CheckBoxParent_CheckedChanged),checkboxlist's(CheckBoxListChildren_SelectedIndexChanged)选择事件,也没有UpdatePanel。

在没有任何结果的情况下工作4个小时,为什么我在选中某个复选框时无法输入事件?

我做错了什么?

由于

protected void Page_Load(object sender, EventArgs e)
{
    if (!IsPostBack)
    {
        ListViewCategories.DataSource = CategoryManager.ListHierarchy();
        ListViewCategories.DataBind();
    }
}

protected void CheckBoxParent_CheckedChanged(object sender, EventArgs e)
{
    if (((CheckBox)sender).Checked)
    {

    }
    else
    {
    }
}

protected void CheckBoxListChildren_SelectedIndexChanged(object sender, EventArgs e)
{
    if (((CheckBoxList)sender).SelectedItem != null)
    {

    }
    else
    {
    }
}




  <asp:UpdatePanel ID="UpdatePanelCategories" runat="server" ChildrenAsTriggers="true" UpdateMode="Conditional">
       <ContentTemplate>
            <asp:ListView ID="ListViewCategories" runat="server">
                <LayoutTemplate>
                    <div id="itemPlaceholder" runat="server"></div>
                </LayoutTemplate>
                <ItemTemplate>
                    <asp:CheckBox ID="CheckBoxParent" runat="server" Text='<%# Eval("Key.Name") %>' OnCheckedChanged="CheckBoxParent_CheckedChanged" /><br />
                    <asp:CheckBoxList ID="CheckBoxListChildren" runat="server" OnSelectedIndexChanged="CheckBoxListChildren_SelectedIndexChanged" RepeatDirection="Horizontal" DataSource='<%# DataBinder.Eval(Container.DataItem, "Value") %>' DataTextField="Name"></asp:CheckBoxList><br /><br />
                </ItemTemplate>
            </asp:ListView>
       </ContentTemplate>
   </asp:UpdatePanel>

1 个答案:

答案 0 :(得分:0)

将CheckBox的“AutoPostBack”设置为true。

相关问题