用一下,就是把返回的数据集再按GridView中的页大小再拆分一下显示
如返回200条,GridView每页20条,那页便是有10页,每次点上一页或是下一页时,都会去数据库里取回来200条数据,再拆分.
有空时,再处理一下,看能不能每页只返回刚好的数据集
(1)是否允许分页
GridView的AllowPaging属性。AllowPaging:是否允许分页。如果AllowPaging=“true”就是允许分页。否则就是不允许使用分页。(2)每页记录数
GridView的PageSize属性。在GridView控件的属性中可以设置每页显示的数据记录的个数。默认情况下PageSize的值是10,也可以根据需要进行设置。
PagerSettings属性的Mode:Numeric,NextPrevious,NextPreviousFirstLast,NumericFirstLast。有这四种,可以根据不同需要进行不同的选择设置。
(3)在PagerSettings上设置显示的信息
例:现在想要在GridView控件上显示如下页码信息:首页、上一页、下一页、尾页。
AllowPaging="True"
PagerSettings FirstPageText="首页" LastPageText="尾页" Mode="NextPreviousFirstLast" NextPageText="下一页" PreviousPageText="上一页" 就行了。
另外添加一个GridView的
protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e)
{
GridView1.PageIndex = e.NewPageIndex;
//重新让GridView显示一下数据的函数
}
//用lblCurrentIndex来显示当前页的页数。
LabelCurrentPage.Text = "第 " + (GridView1.PageIndex + 1).ToString() + " 页";
//用LblPageCount来显示当前数据的总页数。
LabelPageCount.Text = "共 " + GridView1.PageCount.ToString() + " 页";
GridView1.PageIndex为当前页属性,默认索引是从零开始的,GridView1.PageCount为总页数属性从1开始。
当选用自动套用格式后PagerSettings属性的Mode属性会变成Numeric
实例代码:
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 _Default : System.Web.UI.Page
{
static string sqlconn = "server=.;uid=sa;pwd=;database=StudentSystem";
SqlConnection conn = new SqlConnection(sqlconn);
protected void Page_Load(object sender, EventArgs e)
{
BindData();
// Label1.Text = "共 " + GridView1.PageCount.ToString() + " 页"; 显示总页数
Label1.Text = "第 " + (GridView1.PageIndex + 1).ToString() + " 页"; //显示当前页
}
protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e)
{
GridView1.PageIndex = e.NewPageIndex;
BindData();
}
private void BindData()
{
conn.Open();
DataSet ds = CreateDataSet();
GridView1.DataSource = ds;
GridView1.DataBind();
conn.Close();
}
private DataSet CreateDataSet()
{
string strsql = "select * from studentinfo";
SqlCommand cmd = new SqlCommand(strsql, conn);
SqlDataAdapter da = new SqlDataAdapter();
da.SelectCommand = cmd;
DataSet ds = new DataSet();
da.Fill(ds);
return ds;
}
}
文章来源:http://www.bcbbs.net/news/Content.aspx?id=71401
文章来源: http://www.bcbbs.net/news/Content.aspx?id=71401