使用斑竹webdiyer的控件可以轻松做到!

解决方案 »

  1.   

    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("Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" + 
       Server.MapPath("../aspxWeb.mdb"));
      OleDbDataAdapter objCommand=new OleDbDataAdapter("select * from 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 + "?Page=" + Convert.ToString(CurPage-1);  if (!objPds.IsLastPage)
        lnkNext.NavigateUrl=Request.CurrentExecutionFilePath+ "?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>&nbsp;<asp:HyperLink id="lnkPrev" runat="server">上一页</asp:HyperLink>
      <asp:HyperLink id="lnkNext" runat="server">下一页</asp:HyperLink>&nbsp;
    </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>
      

  2.   

    http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnaspp/html/pagercontrols.asp