2

我有一个包含复选框列表的数据列表。

<asp:DataList ID="dtlstfilter" runat="server">
<ItemTemplate>
  <asp:CheckBoxList ForeColor="Gray"  AutoPostBack="true" OnSelectedIndexChanged="chklist_SelectedIndexChanged" ID="chklist"
   runat="server">
 </asp:CheckBoxList>
</ItemTemplate>
</asp:DataList>

我可以在复选框的 SelectedIndexChanged 事件上获取数据列表的行数,即;如果我有复选框列表控件重复 4 次,并且如果我检查第二个,我如何获得值 2?

4

2 回答 2

0

您可以尝试关注。我添加了 +1,因为它是基于 0 的索引..

Protected void dtlstfilter_SelectedIndexChanged(object sender, EventArgs e)
    {
        lblSelectedIndex.Text = (dtlstfilter.SelectedIndex + 1).ToString();
    }
于 2012-12-03T11:16:43.133 回答
0

您应该尝试像这样获取复选框列表的父级

 Protected void dtlstfilter_SelectedIndexChanged(object sender, EventArgs e)
 {
   var control= ((Control)sender).Parent;
    if(control is DataListItem)
    {
       int index=((DataListItem)control).ItemIndex;
    }
}

如果您没有将 DataListItem 作为父级,请尝试父级的父级。

于 2012-12-03T11:37:31.733 回答