用PagedDataSource类实现Repeater和DataList的分页。 PagedDataSource封装了DataGrid的分页属性,我们可以象DataGrid那样进行分页。

HTML代码

<%@ Page Language="C#" AutoEventWireup="true"  CodeFile="Default.aspx.cs" Inherits="_Default" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>无标题页</title>
</head>
<body style="text-align:center">
    <form >

代码页面 

using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Data.SqlClient;

public partial class _Default : System.Web.UI.Page
{

    #region Page_Load()
    protected void Page_Load(object sender, EventArgs e)
    {
        PagedDataSource objds = new PagedDataSource();

        objds.DataSource = ReturnDataTable().DefaultView;

        objds.AllowPaging = true;

        objds.PageSize = 5;

        int CurPage;

        if (Request.QueryString["Page"] != null)
        {
            CurPage = Convert.ToInt32(Request.QueryString["Page"]);
        }
        else
        {
            CurPage = 1;
        }

        objds.CurrentPageIndex = CurPage - 1;

        lblCurrentPage.Text = "当前页:" + CurPage.ToString();

        if (!objds.IsFirstPage)
        {
            lnkPrev.NavigateUrl = Request.CurrentExecutionFilePath + "?Page=" + Convert.ToString(CurPage - 1);
        }

        if (!objds.IsLastPage)
        {
            lnkNext.NavigateUrl = Request.CurrentExecutionFilePath + "?Page=" + Convert.ToString(CurPage + 1);
        }

        Rpt_Test.DataSource = objds;
        Rpt_Test.DataBind();
    }
    #endregion

    #region 返回数据表中数据
    /// <summary>
    /// 返回数据表中数据
    /// </summary>
    /// <returns></returns>
    private DataTable ReturnDataTable()
    {

        DataSet ds = new DataSet();
        using (SqlConnection cn = new SqlConnection("server=jhtest4;uid=sa;pwd=123;database=pubs"))
        {
            SqlCommand cmd = new SqlCommand();
            cmd.Connection = cn;
            cmd.CommandText = "select * from authors";

           

            SqlDataAdapter da = new SqlDataAdapter(cmd);

            try
            {
                da.Fill(ds);
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }

        return ds.Tables[0];
    }
    #endregion

    #region Rpt_Test_ItemDataBound
    /// <summary>
    /// Rpt_Test_ItemDataBound
    /// </summary>
    /// <param name="sender"></param>
    /// <param name="e"></param>
    protected void Rpt_Test_ItemDataBound(object sender, RepeaterItemEventArgs e)
    {

    }
    #endregion
}

相关文章:

  • 2021-09-21
  • 2022-12-23
  • 2022-12-23
  • 2021-10-15
  • 2021-10-17
  • 2021-12-21
猜你喜欢
  • 2022-12-23
  • 2021-06-01
  • 2022-01-24
  • 2021-06-26
  • 2021-12-29
  • 2022-12-23
相关资源
相似解决方案