1.在查询分析器中运行sql脚本
if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[tblStudentInfo]') and OBJECTPROPERTY(id, N'IsUserTable') = 1)
drop table [dbo].[tblStudentInfo]
GO
CREATE TABLE [dbo].[tblStudentInfo] (
[Pid] [int] IDENTITY (1, 1) NOT NULL ,
[CNo] [varchar] (8) COLLATE Chinese_PRC_CI_AS NOT NULL ,
[CName] [varchar] (12) COLLATE Chinese_PRC_CI_AS NOT NULL ,
[CSex] [varchar] (8) COLLATE Chinese_PRC_CI_AS NOT NULL ,
[Iage] [int] NOT NULL ,
[CClassNo] [varchar] (12) COLLATE Chinese_PRC_CI_AS NOT NULL ,
[LinkTel] [varchar] (25) COLLATE Chinese_PRC_CI_AS NOT NULL ,
[Address] [varchar] (50) COLLATE Chinese_PRC_CI_AS NOT NULL ,
[Cmmt] [varchar] (200) COLLATE Chinese_PRC_CI_AS NULL
) ON [PRIMARY]
GO
2.先建页面 default.aspx
在工具箱中拖入一个“Gridview”和“SqlDataSource”控件,根据提示设置,可得如下html
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>GridView中的全选与反选</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" DataKeyNames="CNo"
DataSourceID="SqlDataSource1" BackColor="White" BorderColor="#CCCCCC" BorderStyle="None" BorderWidth="1px" CellPadding="3">
<Columns>
<asp:TemplateField HeaderText="全选">
<HeaderTemplate>
<asp:CheckBox ID="CheckBox2" runat="server" AutoPostBack="True" Text="全选" OnCheckedChanged="aa" />
</HeaderTemplate>
<ItemTemplate>
<asp:CheckBox ID="CheckBox1" runat="server" AutoPostBack="True" />
</ItemTemplate>
</asp:TemplateField>
<asp:BoundField DataField="Pid" HeaderText="Pid" InsertVisible="False" ReadOnly="True"
SortExpression="Pid" />
<asp:BoundField DataField="CNo" HeaderText="CNo" ReadOnly="True" SortExpression="CNo" />
<asp:BoundField DataField="CName" HeaderText="CName" SortExpression="CName" />
<asp:BoundField DataField="CSex" HeaderText="CSex" SortExpression="CSex" />
<asp:BoundField DataField="Iage" HeaderText="Iage" SortExpression="Iage" />
<asp:BoundField DataField="CClassNo" HeaderText="CClassNo" SortExpression="CClassNo" />
<asp:BoundField DataField="LinkTel" HeaderText="LinkTel" SortExpression="LinkTel" />
<asp:BoundField DataField="Address" HeaderText="Address" SortExpression="Address" />
<asp:BoundField DataField="Cmmt" HeaderText="Cmmt" SortExpression="Cmmt" />
</Columns>
<FooterStyle BackColor="White" ForeColor="#000066" />
<RowStyle ForeColor="#000066" />
<SelectedRowStyle BackColor="#669999" Font-Bold="True" ForeColor="White" />
<PagerStyle BackColor="White" ForeColor="#000066" HorizontalAlign="Left" />
<HeaderStyle BackColor="#006699" Font-Bold="True" ForeColor="White" />
</asp:GridView>
<asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:StudentInfoConnectionString3 %>"
SelectCommand="SELECT * FROM [tblStudentInfo]"></asp:SqlDataSource>
</div>
</form>
</body>
</html>
3.在.cs 写入
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
}
public void aa(object sender, System.EventArgs ea)
{
CheckBox cb = (CheckBox)sender;
if (cb.Text == "全选")
{
foreach (GridViewRow gv in this.GridView1.Rows)
{
CheckBox cd = (CheckBox)gv.FindControl("CheckBox1");
cd.Checked = cb.Checked;
cb.Text = "反选";
}
}
else
{
cb.Text = "反选";
foreach (GridViewRow gv in this.GridView1.Rows)
{
CheckBox cd = (CheckBox)gv.FindControl("CheckBox1");
cd.Checked = cb.Checked;
cb.Text = "全选";
}
}
}
}
浙公网安备 33010602011771号