一个asp.net 自定义分页。 /// <summary> /// 首页 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> protected void lkbFirst_Click(object sender, EventArgs e) { lblCurrentPage.Text = "1"; bindData(); } /// <summary> /// 下一页 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> protected void lkbUp_Click(object sender, EventArgs e) { lblCurrentPage.Text = Convert.ToString(Convert.ToInt32(lblCurrentPage.Text) - 1); bindData(); } /// <summary> /// 上一页 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> protected void lkbNext_Click(object sender, EventArgs e) { lblCurrentPage.Text = Convert.ToString(Convert.ToInt32(lblCurrentPage.Text) + 1); bindData(); } /// <summary> /// 尾页 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> protected void lkbLast_Click(object sender, EventArgs e) { lblCurrentPage.Text = lblSumPage.Text; bindData(); } /// <summary> /// 数据绑定 /// </summary> private void bindData() { int currentPage=Convert.ToInt32(this.lblCurrentPage.Text); DataSet ds=new DataSet(); ds=readContent(30,"zcfg"); PagedDataSource ps = new PagedDataSource(); ps.DataSource = ds.Tables[0].DefaultView; ps.AllowPaging = true;//是否可以分页 ps.PageSize = 30; ps.CurrentPageIndex = currentPage - 1;//取得当前页的页码 lkbFirst.Enabled = true; lkbNext.Enabled = true; lkbLast.Enabled = true; lkbUp.Enabled = true; if (currentPage == 1) { lkbFirst.Enabled = false;//不显示第一页 lkbUp.Enabled = false;//不显示上一页 } if (currentPage == ps.PageCount) { lkbLast.Enabled = false;//不显示最后一页 lkbNext.Enabled = false;//不显示下一页 } lblSumPage.Text = Convert.ToString(ps.PageCount);//总页码 Repeater3.DataSource = ps; Repeater3.DataBind(); }