ASP.NET学习之GridView自带分页功能
主要步骤:
1、前台页面准备:
1)准备一个GridView组件,在组件中设置好以下三个属性
AllowPaging="True" :允许分页
PageSize="5" :每页显示的数据条数
OnPageIndexChanging="GridView1_PageIndexChanging":页码发生改变触发的事件
2)按照需要准备对应的行。
3)用后台语言绑定好对应的属性
2、后台准备
1)链接数据库,得到连接数据库的字符串
2)操作数据库,得到满足条件的数据,通过SQLDataAdapter 将数据填充到DataSet中
3)写OnPageIndexChanging事件要完成的功能代码
具体实现代码如下:
前台页面:
注意里面重要的几个属性:
AllowPaging="True" :允许分页
PageSize="5" :每页显示的数据条数
OnPageIndexChanging="GridView1_PageIndexChanging":页码发生改变触发的事件
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="GridView分页.aspx.cs" Inherits="分页显示数据.GridView分页" %> <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head runat="server"> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> <title></title> </head> <body> <form id="form1" runat="server"> <div> <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" AllowPaging="True" PageSize="5" OnPageIndexChanging="GridView1_PageIndexChanging"> <Columns> <asp:TemplateField HeaderText="用户ID"> <ItemTemplate><%#Eval("Uid") %></ItemTemplate> </asp:TemplateField> <asp:TemplateField HeaderText="主题"> <ItemTemplate><%#Eval("Subject") %></ItemTemplate> </asp:TemplateField> <asp:TemplateField HeaderText="内容"> <ItemTemplate><%#Eval("Content") %></ItemTemplate> </asp:TemplateField> </Columns> </asp:GridView> </div> </form> </body> </html>
后台代码:
using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; using System.Configuration; using System.Data.SqlClient; using System.Data; namespace 分页显示数据 { public partial class GridView分页 : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { BindData(); } //获得连接数据库的字符串 string StrSql = ConfigurationManager.ConnectionStrings["MyDB"].ToString(); //定义一个DateSet DataSet ds = new DataSet(); /// <summary> /// 将数据绑定到组将GridView上【实现数据展示了】 /// </summary> public void BindData() { using (SqlConnection sqlConn = new SqlConnection(StrSql)) { string str = "select * from tb_LeaveWord"; SqlDataAdapter sda = new SqlDataAdapter(str, sqlConn); sda.Fill(ds); //到目前为止就得到了满足条件的数据集合,存储在DataSet中 GridView1.DataSource = ds; //给组件GridView绑定数据源 GridView1.DataBind(); //将数据源绑定到控件上【注意:这句话一定要写,否则数据就显示不出来】 } } protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e) { GridView1.PageIndex = e.NewPageIndex; GridView1.DataBind(); } } }