利用PageDataSource进行DataList分页

来源:互联网 发布:常见高校数据库 编辑:程序博客网 时间:2024/04/26 17:46

这里就不详细介绍PageDataSource,大家只要清楚它是内置在GridView里的一个类就好了

在ASPX页面上加入三个Label 和两个HyperLink


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

    
int PageSize, RecordCount, PageCount, CurrentPage;  //定义页面条数、记录总数、页面总数、当前页面
   
    
protected void Page_Load(object sender, EventArgs e)
    
{
        
if (!IsPostBack)
        
{
            DataTable dt 
= new FCD_DownLoadTool().GetTableDownLoadTool();  //定义一个DataTable接受你要的数据

            PagedDataSource objPds 
= new PagedDataSource();    //实例化PagedDataSource 

            objPds.AllowPaging 
= true;   //启动分页属性
            objPds.PageSize = 10;         //每页显示10条
            objPds.DataSource = dt.DefaultView;       //将你获取到的数据表装入PagedDataSource 
            
            
int CurPage;    //定义页码
            if (Request.QueryString["Page"!= null)
                CurPage 
= Convert.ToInt32(Request.QueryString["Page"]);   //如果点按钮(上一页、下一页)传递值不为空则绑定页
            else
                CurPage 
= 1;   为空则为第一页

            objPds.CurrentPageIndex 
= CurPage - 1;    //PagedDataSource 页索引从0开始,所以显示的数据页为当前页码-1
            

            
if (!objPds.IsFirstPage)  //如果提交的不是第一页
            {
                HyperLink1.Visible 
= true;   //上一页按钮显示
                
//上一页导航传递值-1
                HyperLink1.NavigateUrl = Request.CurrentExecutionFilePath + "?Page=" + Convert.ToString(CurPage - 1);
            }

            
else
            
{
                HyperLink1.Visible 
= false;  //上一页按钮不显示

            }


            
if (!objPds.IsLastPage)   //最后一页
            {
                HyperLink2.Visible 
= true;   //下一页不显示
                HyperLink2.NavigateUrl = Request.CurrentExecutionFilePath + "?Page=" + Convert.ToString(CurPage + 1);
            }

            
else
            
{
                HyperLink2.Visible 
= false;
            }

            DataList1.DataSource 
= objPds;   //DataList数据绑定
            DataList1.DataBind();

            RecordCount 
= objPds.DataSourceCount;      //统计记录条数
            Label1.Text = RecordCount.ToString();
            Label2.Text 
= objPds.PageCount.ToString();    //统计页面数
            this.Label3.Text = CurPage.ToString();   //显示当前页
        }

    }

 

 

原创粉丝点击