使用Sql分页方法给Repeater控件分页的方法
页面代码
<div class="bookList"> <asp:Repeater ID="rpBooks" runat="server"> <HeaderTemplate> <ul class="title"> <li class="bName">书名</li> <li class="bAuthor">作者</li> <li class="bPrice">价格</li> </ul> </HeaderTemplate> <ItemTemplate> <ul class="data"> <li class="bName"><%#eval_r("title").ToString().Length > ? eval_r("title").ToString().Substring(, )+"..." : eval_r("title").ToString()%></li> <li class="bAuthor"><%#eval_r("author").ToString().Length > ? eval_r("author").ToString().Substring(, ) + "..." : eval_r("author").ToString()%></li> <li class="bPrice"><%#eval_r("unitprice") %></li> </ul> </ItemTemplate> <AlternatingItemTemplate> <ul class="data" style="background-color:Gray;"> <li class="bName"><%#eval_r("title").ToString().Length > ? eval_r("title").ToString().Substring(, )+"..." : eval_r("title").ToString()%></li> <li class="bAuthor"><%#eval_r("author").ToString().Length > ? eval_r("author").ToString().Substring(, ) + "..." : eval_r("author").ToString()%></li> <li class="bPrice"><%#eval_r("unitprice") %></li> </ul> </AlternatingItemTemplate> </asp:Repeater> <div style="clear:both;"></div> <!--分页跳转--> <p class="page"> <asp:LinkButton ID="lbtnFirst" CommandName="first" runat="server" oncommand="lbtnFirst_Command">首页</asp:LinkButton> <asp:LinkButton ID="lbtnPrevious" CommandName="previous" runat="server" oncommand="lbtnFirst_Command">上一页</asp:LinkButton> <asp:Label ID="lblPageIndex" runat="server" Text=""></asp:Label> <asp:Label ID="Label3" runat="server" Text="/"></asp:Label> <asp:Label ID="lblPageSum" runat="server" Text=""></asp:Label> <asp:LinkButton ID="lbtnNext" CommandName="next" runat="server" oncommand="lbtnFirst_Command">下一页</asp:LinkButton> <asp:LinkButton ID="lbtnLast" CommandName="last" runat="server" oncommand="lbtnFirst_Command">尾页</asp:LinkButton> 跳转到 <asp:TextBox ID="txtPageIndex" runat="server" Width="30px"></asp:TextBox> <asp:Button ID="btnGo" runat="server" Text="跳转到" CommandName="btn" oncommand="lbtnFirst_Command" /> 共<asp:Label ID="lblCount" runat="server" Text="Label"></asp:Label> 条记录</p> </div>
后置代码
int index =;//初始化当前页索引,默认显示第一页
int pageSize = ;//设置每页显示条数
Common.Page page =null;
protected void Page_Load(object sender, EventArgs e)
{
//前段代码中给当前页标签默认为第一页,用标签保存当前页面索引
index =int.Parse(lblPageIndex.Text);
//在页面首次加载的时候,加载总页数,总记录数和信息列表
if (!IsPostBack )
{
page = new Common.Page(index, pageSize);
this.lblCount.Text = page.Count.ToString();
this.lblPageSum.Text = page.PageSum.ToString();
BookBind();
}
}
//翻页按钮命令事件
protected void lbtnFirst_Command(object sender, CommandEventArgs e)
{
page = new Common.Page(index, pageSize);
string commandName = e.CommandName;
switch (commandName)
{
case "first":
page.PageIndex = ; break;
case "previous":
if (index==)
{
page.PageIndex = ;
}
else
{
page.PageIndex =index-;
}
break;
case "next":
if (index == page.PageSum)
{
page.PageIndex = page.PageSum;
}
else
{
page.PageIndex=index+;
}
break;
case "last":
page.PageIndex =page.PageSum;
break;
case "btn":
page.PageIndex = int.Parse(txtPageIndex.Text);
break;
}
this.lblPageIndex.Text = page.PageIndex.ToString();
BookBind();
}
//给Repeater控件绑定数据
private void BookBind()
{
this.rpBooks.DataSource = page.CurPager;
this.rpBooks.DataBind();
}
//获取记录总数的方法
public int GetCount()
{
return page.Count;
}
//获取总页数的方法
public int GetPageSum()
{
return page.PageSum;
}
注意事项
本例使用label标签保存当前页面索引,也可以使用视图状态保存。
使用Sql分页方法给Repeater控件分页的方法的更多相关文章
- [ASP.NET]asp.net Repeater控件的使用方法
asp.net Repeater控件的使用方法 -- : 4770人阅读 评论() 收藏 举报 asp.netserveraspdatasetdeletexhtml 今天学习了,Repeater控件 ...
- ASP.NET Repeater 控件分页
protected void Page_Load(object sender, EventArgs e) { HttpContext context = HttpContext.Current; co ...
- ASP.NET Repeater控件实现简单分页
早上,有看MSDN,看到了 PagedDataSource 类 http://msdn.microsoft.com/zh-cn/library/system.web.ui.webcontrols.pa ...
- repeater控件实现分页
repeater控件实现排序的方法,今天我再向大家介绍repeater控件如何实现分页的效果. 分页分为真分页和假分页. 真分页:控件上一页需要显示多少数据,就从数据库取出并绑定多少数据,每次换页时都 ...
- 使用Repeater控件实现三层嵌套以及分页效果
PS: 第一次用Repeater控件 记录一下 请忽略我的命名不规范 请忽略我的最终效果图(太丑了) 需要用到的朋友可以自行调整的漂亮点 ====================最终效果图===== ...
- SqlServer分页存储过程(多表查询,多条件排序),Repeater控件呈现数据以及分页
存储过程(Stored Procedure)是在大型数据库系统中,一组为了完成特定功能的SQL 语句集,存储在数据库中,经过第一次编译后再次调用不需要再次编译,用户通过指定存储过程的名字并给出 ...
- repeater控件自定义Url分页带参数
repeater控件的效果图如下: 该页面实现的功能如下: 1.上下分页,(也可以带首页和末页,我只是禁掉了没用) 2.根据用户输入的指定分页索引进行跳转 3.根据筛选数据的参数进行URL分页的参数传 ...
- Repeater控件使用(含删除,分页功能)
Repeater控件使用(含删除,分页功能) 摘自:http://www.cnblogs.com/alanliu/archive/2008/02/25/914779.html 前臺代碼 <%@ ...
- asp.net动态网站repeater控件使用及分页操作介绍
asp.net动态网站repeater控件使用及分页操作介绍 1.简单介绍 Repeater 控件是一个容器控件,可用于从网页的任何可用数据中创建自定义列表.Repeater 控件没有自己内置的呈现功 ...
随机推荐
- mysql 不同事务隔离级别
repeatable read 在同一事务中,同一查询多次进行时候,由于其他插入操作(insert)的事务提交,导致每次返回不同的结果集. 标准的repeatable read是允许幻读的,因为这一级 ...
- sentinel服务器出现大量的连接问题【转载】
一.问题现象 redis服务端的sentinel模块存在大量的established状态的连接,并且这些连接一直不被释放,而客户端的连接数正常. 二.问题排查过程 1.根据连接状态进行推断 服务端存在 ...
- 6.12-PrepareStatement,JdbcUtil 读取数据库配置文件properties,dao模式
一.PrepareStatement 防止sql注入 PrepareStatement 是预编译sql语句 更加灵活,更有效率 executeUpdate() 做增删改 executeQuery() ...
- js && Jquery 的回车事件
有时候我们需要捕获页面上的回车事件,以达到一些特殊效果,例如在登录页面用户输入完登录名和密码后习惯直接敲回车,这时需要捕获回车事件,在回车事件中激活form元素 1.纯Java Script版 首先要 ...
- web基础 (一) http协议
一.什么是web服务 浏览器与网页服务端发起的请求与回应(返回的是一堆字符串,浏览器去渲染生成页面!)都是 标准的CS模式 ---- bs模式:客户端用浏览器即可,服务端需要自己去写 http协议是建 ...
- django中使用Ajax
内容: 1.Ajax原理与基本使用 2.Ajax发送get请求 3.Ajax发送post请求 4.Ajax上传文件 5.Ajax设置csrf_token 6.django序列化 参考:https:// ...
- java基础:关于java流与文件操作
1.描述:流是字节数据或字符数据序列.Java采用输入流对象和输出流对象来支持程序对数据的输入和输出.输入流对象提供了数据从源点流向程序的管道,程序可以从输入流对象读取数据:输出流对象提供了数据从程序 ...
- 关于json 转换BigDecimal精度丢失问题
今天在转换一个关于金额字段发现一个关于json转换的bug 目前尚未深入观察 问题: 如果金钱为bigdecimal json转换后不会丢失精度 但是通过@responsebody 返回到前端后发现 ...
- HtmlRowCreated关于e.Row.Cells[0]的获取和设置
获取采用: cmd2.Parameters.AddWithValue("@xh", e.GetValue("学号").ToString().Trim()); ...
- leetcode83
/** * Definition for singly-linked list. * public class ListNode { * public int val; * public ListNo ...