博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
分页技术之PageDataSource类
阅读量:7071 次
发布时间:2019-06-28

本文共 1715 字,大约阅读时间需要 5 分钟。

之前给大家介绍了分页技术之Gridview控件,今天给大家介绍另外一种分页技术,采用PageDataSource类 + Repeater控件来实现。

前台只需要拖出一个Repeater控件来绑定要显示数据即可。

后台代码的实现具体步骤如下:

第一步:连接数据库获取要显示的内容

//连接数据库及将数据封装到一个数据集中      Db db = new Db();        DataSet ds = db.GetDataSet ( sql );        //将DataSet绑定到PageDataSource        PagedDataSource ps = new PagedDataSource();        ps.DataSource = ds.Tables[0].DefaultView;

第二步:设置PageDataSource相关属性

        

//设置属性为允许分页        ps.AllowPaging = true;        //获取当前页面数        int CurPage;        if (Request.QueryString["Page"] != null)    //当前请求页面            CurPage = Convert.ToInt32(Request.QueryString["Page"]);        else            CurPage = 1;        //每个页面显示的条数        ps.PageSize = 20;        //求数据的总数        allmsg.Text = ps.DataSourceCount.ToString();        ps.CurrentPageIndex = CurPage - 1;        //求总页数        allpages.Text = ps.PageCount.ToString();        nowpage.Text = CurPage.ToString();

第三步:将数据源绑定到Repeater控件

//将数据源与控件绑定        Repeater1.DataSource = ps;        Repeater1.DataBind(); 

第四步:设置‘上一页’、‘下一页’、‘首页’、‘尾页’按钮的链接URL

if (!ps.IsFirstPage)        {          //首页页            firstpage.NavigateUrl = Request.CurrentExecutionFilePath +"?Page=1&id=" + articleid + "";          //上一页            divpage.NavigateUrl = Request.CurrentExecutionFilePath +"?Page="+Convert.ToString(CurPage - 1)+"" + "&id="+articleid+"";        }        if (!ps.IsLastPage)        {          //下一页            nextpage.NavigateUrl=Request.CurrentExecutionFilePath + "?Page="+ Convert.ToString(CurPage + 1)+"" + "&id="+articleid+"";          // 尾页            endpage.NavigateUrl=Request.CurrentExecutionFilePath+"?Page="+Convert.ToString(ps.PageCount) + "" + "&id=" + articleid + "";        }

转载于:https://www.cnblogs.com/lhm814/p/3654824.html

你可能感兴趣的文章
进程间传递文件描述符
查看>>
深入浅出linux三剑客之sed必杀技一例
查看>>
用C#.NET编写软件注册机
查看>>
SQL server分页方式
查看>>
Android IPC机制(二)用Messenger进行进程间通信【转】
查看>>
Javascript 严格模式详解
查看>>
Python3入门 Python3+Selenium做UI页面测试的学习
查看>>
两种查找算法的比较
查看>>
Spotlight监控工具使用
查看>>
依赖倒置三个原则
查看>>
[LeetCode] Contains Duplicate II
查看>>
ng-file-upload - samples
查看>>
BZOJ5339:[TJOI2018]教科书般的亵渎——题解
查看>>
svn完整搭建
查看>>
SQL XML 2
查看>>
关于jetty和webx对于HttpServletResponse getWriter和getOutputStream的处理
查看>>
纯CSS3写的10个不同的酷炫图片遮罩层效果
查看>>
关于电脑BIOS解密,如何解密问题?
查看>>
Spring线程安全的实现机制--ThreadLocal
查看>>
html5+canvs实现flash效果。
查看>>