当前位置: 首页 > 图文教程 > 网络编程 > ASP.NET > Repeater控件分页例子

ASP.NET
.Net业务平台的数值精度陷阱与解决方法
投票结果的图片进度条显示
七招制胜ASP.NET应用程序开发
ASP.NET 2.0的导航控件treeview和menu的实例
ASP.NET实现页面间值传递的几种方法
项目调试时出现用到的一个组件“访问被拒绝”的解决方法
ASP.NET中“找不到指定模块”的解决办法
C#中的委托和事件
在指定应用程序域中执行代码
Ajax简单客户登陆验证
AJAX将成为移动Web2.0时代首选开发平台
关闭按钮点击事件的捕捉
远程抓取GOOGLE的自动翻译结果
保护你的DLL和Code不被别人使用
ASP.NET的底层的工作机制介绍
ASP.NET2.0服务器控件之捕获回传事件
使用Data Access Application Block 得到存储过程的返回值
面向服务及其在互联系统策略中的角
ASP.NET2.0服务器控件之创建复杂属性
ASP.NET:设置页面buffer引出来的问题

ASP.NET 中的 Repeater控件分页例子


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-08-14   浏览: 63 ::
收藏到网摘: n/a

Repeater和DataList控件提供了一个快速、灵活的表现数据的方式,但是,它们没有内建的分页功能;DataGrid控件提供了内建的分页功能,但它的结构比较复杂。下面就用PagedDataSource类实现Repeater和DataList的分页。 PagedDataSource封装了DataGrid的分页属性,我们可以象DataGrid那样进行分页。代码如下:

以下为引用的内容:
<%@ Page Language="C#" %>
<%@ import namespace="System.Data" %>
<%@ import namespace="System.Data.OleDb" %>
<script language="C#" runat="server">
public void Page_Load(Object src,EventArgs e) {
  OleDbConnection objConn=new OleDbConnection("<br>
Provider=Microsoft.Jet.OLEDB.4.0;
 Data Source=" + Server.MapPath("../aspxWeb.mdb"));
  OleDbDataAdapter objCommand=new OleDbDataAdapter("select * from<br>
  Document",objConn); DataSet ds=new DataSet();objCommand.Fill(ds);

  PagedDataSource objPds = new PagedDataSource();
  objPds.DataSource = ds.Tables[0].DefaultView;
  objPds.AllowPaging = true;
  objPds.PageSize = 5;
  int CurPage;
  if (Request.QueryString["Page"] != null)
    CurPage=Convert.ToInt32(Request.QueryString["Page"]);
  else
    CurPage=1;

  objPds.CurrentPageIndex = CurPage-1;
  lblCurrentPage.Text = "当前页:" + CurPage.ToString();

  if (!objPds.IsFirstPage)
    lnkPrev.NavigateUrl=Request.CurrentExecutionFilePath + <br>
"?Page=" + Convert.ToString(CurPage-1);

  if (!objPds.IsLastPage)
    lnkNext.NavigateUrl=Request.CurrentExecutionFilePath+ "<br>
?Page=" + Convert.ToString(CurPage+1);

  Repeater1.DataSource=objPds;
  Repeater1.DataBind();
}
</script>
<html>
<head>
<title>Repeater控件分页的例子</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<style>
  P,TD,DIV,SPAN {font-size:9pt}
</style>
</head>
<body>
<form name="form1" method="POST" runat="server">
<div style="padding:5px;background-color:#dedede">
<asp:label ID="lblCurrentPage" runat="server"></asp:label></td>
  <td> <asp:HyperLink id="lnkPrev" runat="server">上一页</asp:HyperLink>
  <asp:HyperLink id="lnkNext" runat="server">下一页</asp:HyperLink>
</div>
<hr size="1" color="#000099"/>
<asp:Repeater ID="Repeater1" runat="server">
<Itemtemplate>
<div style="padding:5px;background-color:#dedede">
<%# DataBinder.Eval(Container.DataItem, "Title") %>
</div>
</Itemtemplate>
</asp:Repeater>
</form>
</body>
</html>