PagedDataSource的分页

本文介绍了一个使用 ASP.NET 实现的简单分页功能。通过 PagedDataSource 控件进行数据分页展示,并利用 HyperLink 控件实现翻页操作。文章详细解释了如何设置每页显示的记录数、如何判断当前页是否为首页或末页以及如何动态更新导航链接。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

int PageSize, RecordCount, PageCount, CurrentPage; //定义页面条数、记录总数、页面总 数、当前页面

 

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(RequeryString["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();   //显示当前页
        }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值