代码如下:public partial class Default2 : System.Web.UI.Page
{
BookManager bookBll = null; private int cpages = 1; //页码 private int pageSize = 5; //页大小 private int maxPage = 0;//总页码 private string sort = "PublishDate"; //默认排序方式 出版日期 protected void Page_Load(object sender, EventArgs e)
{
//if (!Page.IsPostBack)
// Bindata();
// MaxPage();
//this.lblpage.Text = cpages + "";
}
//邦定数据
protected void Bindata()
{
bookBll = new BookManager();
this.dtist.DataSource = bookBll.GetAllBooks(cpages, pageSize, sort);
this.dtist.DataBind();
} //下一页
protected void btnNext_Click(object sender, EventArgs e)
{
cpages = Convert.ToInt32(Request.QueryString["cpage"]);//获得地址栏参数
cpages = cpages + 1;
CheckPages(cpages); } //上一页
protected void btnBack_Click(object sender, EventArgs e)
{
cpages = Convert.ToInt32(Request.QueryString["cpage"]);//获得地址栏参数
cpages = cpages - 1;
CheckPages(cpages);
} //计算总页码
protected int MaxPage()
{
bookBll = new BookManager();
int count = bookBll.CountPage();
int sumPage = 0;
if (count % pageSize == 0)
{
sumPage = count / pageSize;
}
else
{
sumPage = (count / pageSize) + 1;
}
this.lblCountPage.Text = sumPage+"";
return sumPage;
}
//检索页码
private void CheckPages(int pages)
{
maxPage = MaxPage(); if (cpages > maxPage)
{
Response.Write("<script>alert('已经是最后一页了');</script>");
}
else if (cpages <= 0)
{
Response.Write("<script>alert('已经是第一页了');</script>");
}
else
{
this.lblpage.Text = cpages + "";
Response.Redirect("BookList.aspx?cpage=" + cpages);
}
}
前台代码如下第<asp:Label ID="lblpage" runat="server"></asp:Label>页,共<asp:Label ID="lblCountPage" runat="server"></asp:Label>页<asp:Button ID="btnBack" runat="server" BackColor="LightGray" BorderWidth="0px"
Font-Size="7pt" Text=" 上一页" Width="80px" OnClick="btnBack_Click" /> |
<asp:Button ID="btnNext" runat="server" BackColor="Silver" BorderWidth="0px" Font-Size="7pt"
Text="下一页" Width="80px" OnClick="btnNext_Click" />
{
BookManager bookBll = null; private int cpages = 1; //页码 private int pageSize = 5; //页大小 private int maxPage = 0;//总页码 private string sort = "PublishDate"; //默认排序方式 出版日期 protected void Page_Load(object sender, EventArgs e)
{
//if (!Page.IsPostBack)
// Bindata();
// MaxPage();
//this.lblpage.Text = cpages + "";
}
//邦定数据
protected void Bindata()
{
bookBll = new BookManager();
this.dtist.DataSource = bookBll.GetAllBooks(cpages, pageSize, sort);
this.dtist.DataBind();
} //下一页
protected void btnNext_Click(object sender, EventArgs e)
{
cpages = Convert.ToInt32(Request.QueryString["cpage"]);//获得地址栏参数
cpages = cpages + 1;
CheckPages(cpages); } //上一页
protected void btnBack_Click(object sender, EventArgs e)
{
cpages = Convert.ToInt32(Request.QueryString["cpage"]);//获得地址栏参数
cpages = cpages - 1;
CheckPages(cpages);
} //计算总页码
protected int MaxPage()
{
bookBll = new BookManager();
int count = bookBll.CountPage();
int sumPage = 0;
if (count % pageSize == 0)
{
sumPage = count / pageSize;
}
else
{
sumPage = (count / pageSize) + 1;
}
this.lblCountPage.Text = sumPage+"";
return sumPage;
}
//检索页码
private void CheckPages(int pages)
{
maxPage = MaxPage(); if (cpages > maxPage)
{
Response.Write("<script>alert('已经是最后一页了');</script>");
}
else if (cpages <= 0)
{
Response.Write("<script>alert('已经是第一页了');</script>");
}
else
{
this.lblpage.Text = cpages + "";
Response.Redirect("BookList.aspx?cpage=" + cpages);
}
}
前台代码如下第<asp:Label ID="lblpage" runat="server"></asp:Label>页,共<asp:Label ID="lblCountPage" runat="server"></asp:Label>页<asp:Button ID="btnBack" runat="server" BackColor="LightGray" BorderWidth="0px"
Font-Size="7pt" Text=" 上一页" Width="80px" OnClick="btnBack_Click" /> |
<asp:Button ID="btnNext" runat="server" BackColor="Silver" BorderWidth="0px" Font-Size="7pt"
Text="下一页" Width="80px" OnClick="btnNext_Click" />
解决方案 »
- C#导入dll时用DllImport怎么操作
- SOCKET通讯问题
- 【急】C# 结构调用问题!
- 执行Response.Write(....)会弹出空白窗体
- 关于DataGrid中选中一行更深入的问题。
- List.FindAll()的方法消耗很多内存,而且令w3wp进程假死
- sql中的select语句问题
- 代码诊断: 为什么将Excel中的数据导入Access数据库中时不成功
- 请大家谈对Developer Express XtraGrid.Net v2.0.1.0的看法!
- 求教下FileInfo[] allFile 添加多个格式
- 如何根据日历控件选择的日期读取数据库
- frombase64String 内存不足异常
传参,把你构造出的那几个参数传到Bindata()
首次加载那几个参数默认几个参数
方法的bookBll.GetAllBooks(cpages, pageSize, sort)里上一页或下一页都要调用binddata()方法
方法有很多种,这是最直观的一种方法
分页最如用分页存储过程做,效率要快的多~!