GridView 中 CheckBox 简单应用

实现效果:
就是GridView的每一行都有一个CheckBox列
标头处的CheckBox的点选与否
联动到当前页的GridView上的CheckBox列的点选

相关设置如下
1. GridView的AutoGenerateColumns=True
   这样的话 其他的相关字段就可以不用再多加设置

2. GridView的Html代码如下:
<asp:GridView ID="gv_Selected" runat="server">
 <Columns>
  <asp:TemplateField>
   <HeaderTemplate>
    <asp:CheckBox  ID="chk_SelectedHeader" runat="server" OnCheckedChanged="chk_SelectedHeader_CheckedChanged" AutoPostBack="true" />
   </HeaderTemplate>
   <ItemTemplate>                                                   
    <asp:CheckBox ID="chk_Selected" runat="server"/>
   </ItemTemplate>
  </asp:TemplateField>
 </Columns>
</asp:GridView>

3. 后台的chk_SelectedHeader_CheckedChanged事件代码如下:
    #region gv_Selected 标头的 CheckBox 点击事件
    protected void chk_SelectedHeader_CheckedChanged(object sender, EventArgs e)
    {
        try
        {
            bool isCheck = ((CheckBox)this.gv_Selected.HeaderRow.FindControl("chk_SelectedHeader")).Checked;
            for (int i = 0; i < this.gv_Selected.Rows.Count; i++)
            {
                ((CheckBox)this.gv_Selected.Rows[i].FindControl("chk_Selected")).Checked = isCheck;
            }
        }
        catch (Exception ex)
        {
            ex.ToString();
        }
    }
    #endregion

posted on 2007-01-15 13:00  freeliver54  阅读(659)  评论(0编辑  收藏  举报

导航