GridView自带的分页功能实现:
要实现GrdView分页的功能
操作如下:
1、更改GrdView控件的AllowPaging属性为true。
2、更改GrdView控件的PageSize属性为 任意数值(默认为10)
3、更改GrdView控件的PageSetting->Mode为Numeric等(默认为Numeric)该属性为分页样式。
GridView属性设置好了,从页面上也能看到分页样式。
现在开始实现分页的功能:
1、在<<asp:GridViewID=......>后添加,OnPageIndexChanging="GridView1_PageIndexChanging"
2、在对应的aspx.cs中添加:
protectedvoid GridView1_PageIndexChanging(object sender,GridViewPageEventArgs e)
{
GridView1.PageIndex = e.NewPageIndex;
InitPage();//重新绑定GridView数据的函数
}
3、
GridView1.PageIndex = e.NewPageIndex;
完了之后再重新绑定一下GridView。
效果:
GridView添加CheckBox列实现全选/全部取消功能
首先GridView编辑模版,在模板上添加CheckBox控件,之后将新添加列字段转换为TemplateFiled
http://hiphotos.baidu.com/hanjubizu/pic/item/dc68137fc524301328388a81.jpg
后台代码:
using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Data.SqlClient;
public partial class Default5 :System.Web.UI.Page
{
SqlConnection sqlcon;
stringstrCon = "Data Source=(local);Database=北风贸易;Uid=sa;Pwd=sa";
protectedvoid Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
bind();
}
}
protectedvoid CheckBox2_CheckedChanged(object sender, EventArgs e)
{
for (int i = 0; i <= GridView1.Rows.Count - 1;i++)
{
CheckBox cbox =(CheckBox)GridView1.Rows[i].FindControl("CheckBox1");
if (CheckBox2.Checked == true)
{
cbox.Checked = true;
}
else
{
cbox.Checked = false;
}
}
}
protectedvoid Button2_Click(object sender, EventArgs e)
{
sqlcon = new SqlConnection(strCon);
SqlCommand sqlcom;
for (int i = 0; i <= GridView1.Rows.Count - 1;i++)
{
CheckBox cbox =(CheckBox)GridView1.Rows[i].FindControl("CheckBox1");
if (cbox.Checked == true)
{
string sqlstr = "delete from 飞狐工作室 where 身份证号码='" +GridView1.DataKeys[i].Value + "'";
sqlcom = new SqlCommand(sqlstr, sqlcon);
sqlcon.Open();
sqlcom.ExecuteNonQuery();
sqlcon.Close();
}
}
bind();
}
protectedvoid Button1_Click(object sender, EventArgs e)
{
CheckBox2.Checked = false;
for (int i = 0; i <= GridView1.Rows.Count - 1;i++)
{
CheckBox cbox =(CheckBox)GridView1.Rows[i].FindControl("CheckBox1");
cbox.Checked = false;
}
}
public voidbind()
{
string sqlstr = "select top 5 * from 飞狐工作室";
sqlcon = new SqlConnection(strCon);
SqlDataAdapter myda = new SqlDataAdapter(sqlstr, sqlcon);
DataSet myds = new DataSet();
sqlcon.Open();
myda.Fill(myds, "tb_Member");
GridView1.DataSource = myds;
GridView1.DataKeyNames = new string[] { "身份证号码" };
GridView1.DataBind();
sqlcon.Close();
}
}
前台主要代码:
<asp:GridViewID="GridView1" runat="server" AllowSorting="True"
CellPadding="3" Font-Size="9pt" BackColor="White"BorderColor="#CCCCCC" BorderStyle="None"BorderWidth="1px">
<FooterStyle BackColor="White" ForeColor="#000066"/>
<Columns>
<asp:TemplateField>
<ItemTemplate>
<asp:CheckBox ID="CheckBox1" runat="server"/>
</ItemTemplate>
</asp:TemplateField>
<asp:BoundField DataField="身份证号码" HeaderText="用户ID"SortExpression="身份证号码" />
<asp:BoundField DataField="姓名" HeaderText="用户姓名"SortExpression="姓名"/>
<asp:BoundField DataField="家庭住址" HeaderText="家庭住址"SortExpression="家庭住址"/>
</Columns>
<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:CheckBox ID="CheckBox2" runat="server" Font-Size="9pt"OnCheckedChanged="CheckBox2_CheckedChanged"
Text="全选" />
<asp:Button ID="Button1" runat="server"Font-Size="9pt" Text="取消" onClick="Button1_Click"/>
<asp:Button ID="Button2" runat="server"Font-Size="9pt" Text="删除" onClick="Button2_Click"/>