protected void Bind()
{
//获取当前页数
int curpage = Convert.ToInt32(this.labPage.Text);
//生成PagedDataSource的实例
PagedDataSource ps = new PagedDataSource();
SqlConnection con = new SqlConnection("server=.;database=mr_08;uid=sa;pwd=");
con.Open();
SqlDataAdapter sda = new SqlDataAdapter("select * from BookInfo", con);
DataSet ds = new DataSet();
sda.Fill(ds, "BookInfo");
//获取数据源
ps.DataSource = ds.Tables["BookInfo"].DefaultView;
//启用分页
ps.AllowPaging = true;
//每页显示3条数据
ps.PageSize = 3;
//设置当前页的索引
ps.CurrentPageIndex = curpage - 1;
this.lnkbtnFront.Enabled = true;
this.lnkbtnNext.Enabled = true;
this.lnkbtnLast.Enabled = true;
this.lnkbtnFirst.Enabled = true;
if (curpage == 1) //等于第一页
{
this.lnkbtnFirst.Enabled = false;//不显示第一页按钮
this.lnkbtnFront.Enabled = false;//不显示上一页按钮
}
if (curpage == ps.PageCount) //等于最后一页
{
this.lnkbtnNext.Enabled = false;//不显示下一页
this.lnkbtnLast.Enabled = false;//不显示最后一页
}
//显示总页数
this.labBackPage.Text = Convert.ToString(ps.PageCount);
this.DataList1.DataSource = ps;
//设置数据源的关键字段
this.DataList1.DataKeyField = "ID";
DataList1.DataSource = ps;
DataList1.DataBind();
con.Close();
}
protected void lnkbtnFirst_Click1(object sender, EventArgs e)
{
labPage.Text = "1";//设置当前页为1
Bind();//调用自定义方法重新绑定数据
}
protected void lnkbtnFront_Click(object sender, EventArgs e)
{ //设置当前页减1
labPage.Text = Convert.ToString(Convert.ToInt32(labPage.Text) - 1);
Bind();//调用自定义方法重新绑定数据
}
protected void lnkbtnNext_Click(object sender, EventArgs e)
{ //设置当前页加1
labPage.Text = Convert.ToString(Convert.ToInt32(labPage.Text) + 1);
Bind();//调用自定义方法重新绑定数据
}
protected void lnkbtnLast_Click(object sender, EventArgs e)
{ //设置当前页为最后一页
labPage.Text = labBackPage.Text;
Bind();//调用自定义方法重新绑定数据
}