第一种:
if(!IsPostBack)
{
// datatable=obj.BindDataGrid_First("Project_BindDataGrid_First");
// BindDataList();
datatable =obj.GetDataArrayList();
PagedDataSource objPds = new PagedDataSource();
objPds.DataSource =datatable.DefaultView;
objPds.AllowPaging = true;
objPds.PageSize = 5;
int CurPage;
//当前页面从Page查询参数获取
if (Request.QueryString["Page"] != null)
CurPage=Convert.ToInt32(Request.QueryString["Page"]);
else
CurPage=1;
objPds.CurrentPageIndex = CurPage-1;
// lblCurrentPage.Text = "Page: " + CurPage.ToString();
if (!objPds.IsFirstPage)
lnkPrev.NavigateUrl=Request.CurrentExecutionFilePath + "?Page=" + Convert.ToString(CurPage-1);
if (!objPds.IsLastPage)
lnkNext.NavigateUrl=Request.CurrentExecutionFilePath+ "?Page=" + Convert.ToString(CurPage+1);
this.DataList1.DataSource=objPds;
this.DataList1.DataBind();
}
}
{
// datatable=obj.BindDataGrid_First("Project_BindDataGrid_First");
// BindDataList();
datatable =obj.GetDataArrayList();
PagedDataSource objPds = new PagedDataSource();
objPds.DataSource =datatable.DefaultView;
objPds.AllowPaging = true;
objPds.PageSize = 5;
int CurPage;
//当前页面从Page查询参数获取
if (Request.QueryString["Page"] != null)
CurPage=Convert.ToInt32(Request.QueryString["Page"]);
else
CurPage=1;
objPds.CurrentPageIndex = CurPage-1;
// lblCurrentPage.Text = "Page: " + CurPage.ToString();
if (!objPds.IsFirstPage)
lnkPrev.NavigateUrl=Request.CurrentExecutionFilePath + "?Page=" + Convert.ToString(CurPage-1);
if (!objPds.IsLastPage)
lnkNext.NavigateUrl=Request.CurrentExecutionFilePath+ "?Page=" + Convert.ToString(CurPage+1);
this.DataList1.DataSource=objPds;
this.DataList1.DataBind();
}
}
第二种:
下面是db类中的ds方法
public static DataTable ds(string que)
{//返回一个装载了SQL制定留言的数据表,
OleDbConnection con = odb.con();
OleDbDataAdapter oda = new OleDbDataAdapter();
oda.SelectCommand=new OleDbCommand(que,con);
DataSet ds = new DataSet();
oda.Fill(ds,"thc");
return ds.Tables["thc"];
con.Close();
}
下面方法使用的数据源就是上面的这个
private void fill()
{//做的一个方法,因为页内将有多次的绑定
//这里设置一个隐藏的Label,用与储存当前的页索引
int cup = Convert.ToInt32(pagelbl.Text);
PagedDataSource ps = new PagedDataSource();//NEW一个分页数据源
ps.DataSource = odb.ds("select * from guest order by id desc").DefaultView;//送一个SQL语句进去,确定该数据源的数据源,有点绕吧,呵呵
ps.AllowPaging = true;//允许分页
ps.PageSize = 2;//设置页的数量
ps.CurrentPageIndex = cup-1;
if (!IsPostBack)
{//判断页面是否第一次载入
for (int i = 1; i <= ps.PageCount; i++)
{//循环出页码
pageddl.Items.Add(i.ToString());
}
}
//下面主要是控制上下翻页按纽是否起用
pageup.Enabled = true;
pagedown.Enabled = true;
if (ps.IsFirstPage)
{//如果是最前页,上页按纽不可用
pageup.Enabled = false;
}
if (ps.IsLastPage)
{//如果是最后页,下页按纽不可用
pagedown.Enabled = false;
}
//设置页码下拉菜单当前选中的值
pageddl.SelectedItem.Text = cup.ToString();
//终于可以绑定给DataList了
DataList1.DataSource = ps;
DataList1.DataKeyField = "id";
DataList1.DataBind();
}
再下面是翻页事件的处理
protected void pageddl_SelectedIndexChanged(object sender, EventArgs e)
{//页码下拉菜单事件
pagelbl.Text = pageddl.SelectedItem.Text.ToString();
fill();
}
protected void pagedown_Click(object sender, EventArgs e)
{//下页事件
pagelbl.Text = Convert.ToString(Convert.ToInt32(pagelbl.Text)+1);
fill();
}
protected void pageup_Click(object sender, EventArgs e)
{//上页事件
pagelbl.Text = Convert.ToString(Convert.ToInt32(pagelbl.Text)-1);
fill();
if(!IsPostBack)
{ //获取当前时间
this.labdaytime.Text=Convert.ToString(System.DateTime.Now);
pageSize =5;// 页大小
currentPage = 0; //当前页( 初始化当前页为第0页)
ViewState["CurrentPage"] = 0;
recordCount =obj.CalculateRecord(string.Empty); // 计算共有多少条记录
ViewState["RecordCount"] = recordCount;
pageCount=0;
pageCount = recordCount / pageSize; // 计算共有多少页
if (( recordCount % pageSize)>0)
{
pageCount++;
}
ViewState["PageCount"] = pageCount;
BindDataList();//绑定DATALIST
}
分页
首页
上一页
下一页
末页
到第几页
获取查询的数据集
{ //获取当前时间
this.labdaytime.Text=Convert.ToString(System.DateTime.Now);
pageSize =5;// 页大小
currentPage = 0; //当前页( 初始化当前页为第0页)
ViewState["CurrentPage"] = 0;
recordCount =obj.CalculateRecord(string.Empty); // 计算共有多少条记录
ViewState["RecordCount"] = recordCount;
pageCount=0;
pageCount = recordCount / pageSize; // 计算共有多少页
if (( recordCount % pageSize)>0)
{
pageCount++;
}
ViewState["PageCount"] = pageCount;
BindDataList();//绑定DATALIST
}
分页
首页
上一页
下一页
末页
到第几页
获取查询的数据集