ASP.NET2.0下含有CheckBox的GridView删除选定记录实例


1 <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" PageSize="5"
2             Width="726px" AllowPaging="True" AllowSorting="True"
3             DataKeyNames="DB1_1,DB1_2" OnRowDeleting="GridView1_RowDeleting"  OnPageIndexChanging="GridView1_PageIndexChanging" OnRowDataBound="GridView1_RowDataBound" OnSorting="GridView1_Sorting" Height="279px" >
4             <Columns>
5               <asp:TemplateField HeaderText="序号" >
6                 <ItemTemplate>
7                 <%# this.GridView1.PageIndex * this.GridView1.PageSize + this.GridView1.Rows.Count + 1%>
8                 </ItemTemplate>
9               </asp:TemplateField>
10               <asp:TemplateField HeaderText="选择" >
11                 <ItemTemplate>
12                   <asp:CheckBox ID="chkSelect" runat="server" ></asp:CheckBox>
13                 </ItemTemplate>
14               </asp:TemplateField>
15             <asp:TemplateField HeaderText="操作" ShowHeader="False">
16               <ItemTemplate>
17               <asp:LinkButton ID="lbtnDelete" runat="server" CausesValidation="False" CommandName="Delete"
18                 Text="删除" OnClientClick="return confirm('确认要删除吗?');"></asp:LinkButton>
19             </ItemTemplate>
20             </asp:TemplateField>
21            </Columns>
22            <AlternatingRowStyle BackColor="Aquamarine" />
23           </asp:GridView>

1 <asp:CheckBox ID="chkSelectAll" runat="server" Text="全部选中" OnCheckedChanged="chkSelectAll_CheckedChanged" AutoPostBack="True" ></asp:CheckBox>
2           <asp:Button ID="btnDelete" runat="server" Text="删除" OnClick="btnDelete_Click" />

1  protected void btnDelete_Click(object sender, EventArgs e)
2   {
3     string strDelete = "";
4     for (int i = 0; i < this.GridView1.Rows.Count; i++)
5     {
6       string Label;
7       bool isChecked = ((CheckBox)GridView1.Rows[i].FindControl("chkSelect")).Checked;
8       Label = ((Label)GridView1.Rows[i].FindControl("labXH")).Text;
9       if (isChecked)
10       {
11        strDelete = "DB1_1" + "=" + Label;
12       }
13     }
14     conn.RunSql("Delete from DB1 where " + strDelete
15     this.chkSelectAll.Checked = false;
16     GridViewBind();
17   }
18 
19  protected void chkSelectAll_CheckedChanged(object sender, EventArgs e)
20   {
21     //遍历GridView行获取CheckBox属性
22   for (int i = 0; i < this.GridView1.Rows.Count; i++)
23     {
24       ((CheckBox)GridView1.Rows[i].FindControl("chkSelect")).Checked = this.chkSelectAll.Checked;
25     }
26   }

 

本文作者:
« 
» 
快速导航

Copyright © 2016 phpStudy | 豫ICP备2021030365号-3