AspNetPager 分页显示
在视频播放系统中视频介绍页有一个对视频评论的页面,在这个页面访问网站的用户可以添加评论和查看评
论,添加评论是没问题的,但是查看评论稍微有点难度,在牛腩视频中的分页是假分页,他是把所有的评论都加载到
页面中,这样就给页面带来了很大的压力,并且查询上也是很大的工作量,所以我们就考虑使用真分页。
真分页是把所需要的页面的评论显示出来,而不是加载所有的评论,这样我们的页面压力和美观上都有了很大的
改善用户可以任意选择自己需要看的那一页,并且数据查询方面也是非常的简单。
真分页显示需要的控件是AspNetPager,这个控件是一个山西人写的,非常的好用。
添加控件将aspNetPager添加到工具栏,然后添加到页面。添加到页面之后需要设置AspNetPager的属性,当然默认
下的也可以正常显示,只是那是最简单的,如果你想要更多的效果,可以设置属性,如:上一页、下一页、首页、显
示搜索框………………,这样就会让你的页面丰富很多,也很方便,如果数据量大的话,可以加入搜索框。
然后就是页面的代码:
1.页面加载时需要载入评论,默认显示是第一页,每页的显示条数自己定,一般是10到20条,淡然首先要给aspNetPage.RecordCount=dt.rows.count(评论总数)
2.之后就是加载数据,
- <span style="font-size:18px;">/// <summary>
- ///在分页中加载数据
- /// </summary>
- /// <param name="CourseId"></param>
- /// <param name="pageSize"></param>
- /// <param name="PageNum"></param>
- protected void LoadData(int CourseId, int pageSize, int PageNum)
- {
- DataTable dt = new DataTable();
- VideoCommentManager objVideoCommentManager = new VideoCommentManager();
- aspPagerComment.PageSize = 10; //设置每页显示数目
- aspPagerComment.RecordCount = objVideoCommentManager.GetCount( int.Parse(HFCourseId.Value)); //获得评论总数
- if (aspPagerComment.RecordCount < 10)
- {
- aspPagerComment.Visible = false;
- }
- else
- {
- aspPagerComment.Visible = true;
- }
- dt = objVideoCommentManager.GetCommentsByVideoCourseID(int.Parse(HFCourseId.Value), pageSize, PageNum);
- RepeaterComment.DataSource = dt; //将数据绑定repeater控件
- RepeaterComment.DataBind();
- }
- </span><pre name="code" class="html"><span style="font-size:18px;">3.选择需要的页面时
- /// <summary>
- /// 评论换页
- /// </summary>
- /// <param name="sender"></param>
- /// <param name="e"></param>
- protected void aspPagerComment_PageChanged(object sender, EventArgs e)
- {
- LoadData(int.Parse(HFCourseId.Value), aspPagerComment.PageSize, aspPagerComment.CurrentPageIndex);
- }</span>
<span style="font-size:18px;">/// <summary> ///在分页中加载数据 /// </summary> /// <param name="CourseId"></param> /// <param name="pageSize"></param> /// <param name="PageNum"></param> protected void LoadData(int CourseId, int pageSize, int PageNum) { DataTable dt = new DataTable(); VideoCommentManager objVideoCommentManager = new VideoCommentManager(); aspPagerComment.PageSize = 10; //设置每页显示数目 aspPagerComment.RecordCount = objVideoCommentManager.GetCount( int.Parse(HFCourseId.Value)); //获得评论总数 if (aspPagerComment.RecordCount < 10) { aspPagerComment.Visible = false; } else { aspPagerComment.Visible = true; } dt = objVideoCommentManager.GetCommentsByVideoCourseID(int.Parse(HFCourseId.Value), pageSize, PageNum); RepeaterComment.DataSource = dt; //将数据绑定repeater控件 RepeaterComment.DataBind(); } </span><pre name="code" class="html"><span style="font-size:18px;">3.选择需要的页面时 /// <summary> /// 评论换页 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> protected void aspPagerComment_PageChanged(object sender, EventArgs e) { LoadData(int.Parse(HFCourseId.Value), aspPagerComment.PageSize, aspPagerComment.CurrentPageIndex); }</span>
数据库的sql语句是根据页码和每页显示数,来查询特定页的数据
- <span style="font-size:18px;"> sql="with temptb as(select ROW_NUMBER() over(order by conmmentTIme desc)as rowNum, * from VideoComment where [videoCourseId]=@videoCourseId)select * from temptb where rowNum between @startIndex and @endIndex"
- 这样我们的真分页就完成了,当然我们如果想让分页控件显示的好看些我们可以,在css中设置控件的格式,让我们的页面的更加美观。
- 但是需要注意的是:如果我们的控件不显示下面三点要注意:
- </span>
<span style="font-size:18px;"> sql="with temptb as(select ROW_NUMBER() over(order by conmmentTIme desc)as rowNum, * from VideoComment where [videoCourseId]=@videoCourseId)select * from temptb where rowNum between @startIndex and @endIndex" 这样我们的真分页就完成了,当然我们如果想让分页控件显示的好看些我们可以,在css中设置控件的格式,让我们的页面的更加美观。 但是需要注意的是:如果我们的控件不显示下面三点要注意: </span>
1、要分页的记录总数只要一页且AlwaysShow设为false(默认),当然如果只有一页的时候,设置为false,就不会显示。
2、Visible属性设为false;
3.未设置RecordCount的值view plaincopy to clipboardprint?
- </pre></blockquote><pre>
转载于:https://www.cnblogs.com/Kung/archive/2011/12/29/paging.html
AspNetPager 分页显示相关推荐
- Repeater使用 AspNetPager分页控件
一.AspNetPager分页控件 分页是Web应用程序中最常用到的功能之一,在ASP.NET中,虽然自带了一个可以分页的DataGrid(asp.net 1.1)和GridView(asp.net ...
- 改进一个asp.net通用分页显示辅助类
前言:闲暇时重新再看之前很多项目代码的时候,发现很多总是有那么点缺陷的代码,如芒刺入骨,令人心烦.挣扎良久,苦口婆心劝荐自己今后要争取把某些代码写的更易用更灵活更完善一些.比如在这篇已经提及到的通用客 ...
- Django中html里的分页显示
分页一(very low) 因为数据量过大,而又想直观便捷的查看数据,进而通过分页显示就可以完成这项工作 app中views.py LIST=[] #全局定义一个LIST for i in range ...
- scroll事件实现监控滚动条并分页显示示例(zepto.js)
scroll事件实现监控滚动条并分页显示示例(zepto.js ) 需求:在APP落地页上的底部位置显示此前其他用户的购买记录,要求此div盒子只显示3条半,但一页有10条,div内的滑动条滑到一页 ...
- android listview分页显示,Android应用中使用ListView来分页显示刷新的内容
点击按钮刷新1.效果如下: 实例如下: 上图的添加数据按钮可以换成一个进度条 因为没有数据所以我加了一个按钮添加到数据库用于测试:一般在服务器拉去数据需要一定的时间,所以可以弄个进度条来提示用户: ...
- asp oracle 分页显示,利用ASP实现Oracle数据记录的分页显示
[IT168 服务器学院]一.引言 通过浏览器访问数据量大的表时需要进行分页.ASP对数据库记录分页显示可以通过ADO对象集Recordset对象来实现.Recordset具有以下几个用于分页显示的属 ...
- DataGridView 分页显示
DataGridView 分页显示函数 1.获取当前页的子数据表函数 public static DataTable GetPagedTable(DataTable dt, int PageIndex ...
- Struts2+Hibernate分页显示实例
下面是一个struts2+hibernate的分页显示,主要是用到了hibernate的相应分页方法大大简单了分页的代码 版本:Struts2.1.8 Hibernate3.2 Oracle9g 具体 ...
- Latex 算法过长 分页显示方法
参考: Algorithm tag and page break Latex 算法过长 分页显示方法 1.引用algorithm包: 2.在\begin{document}前加上以下Latex代码: ...
最新文章
- 小公司该如何吸引人才、留住人才?
- 腾讯AI Lab开源世界首款自动化模型压缩框架PocketFlow:将深度学习装进口袋
- 轻量级web api_10个很棒的JavaScript库,提升Web开发效率
- 如何在Git中更改多次提交的作者和提交者名称以及电子邮件?
- 无忧无盘服务器,无忧网维无盘系统新手快速部署.doc
- 微信小程序的scroll-view组件
- 基于.net core 3 和 Orleans 3 的 开发框架:Phenix Framework 7
- Tun/Tap接口教材-[翻译:Tun/Tap interface tutorial]
- mac下安装配置nginx环境
- 实验三 进程调度模拟程序
- JAVA秒杀mysql层实现_一文搞懂MySQL的Join,聊一聊秒杀架构设计
- SQL Server 2005 express下载地址
- 超级素数c语言,每个位都为素数
- python手工打码_python云打码
- 图的同构识别算法——C++代码实现
- 企业自动运行系统——价格策略
- 基于机会网络环境模拟器的命名数据容迟网络的设计与实现
- 软件估算与软件测量的区别是什么?
- RevitAPI: 当前视图为透视图的时候IdlingEvent不会被触发
- python爬取京东评论怎么翻页_爬取京东网页评论(动态网页)
热门文章
- oracle 全球副总裁,京东商城CTO:原Oracle全球副总裁坐阵
- js 对象 key 变量
- 电脑打印机显示服务器脱机怎么弄,打印机显示脱机怎么办 只需四步就能解决...
- java计费模块_学校管理软件的计费模块(费用)[关闭]
- Object Detection (2)Faster RCNN详解
- 零散专题09 Moment.js和date-fns
- 一个 SAP 成都研究院开发工程师的2021年度总结:既没有厚积,也未能薄发
- mysql timestampdiff datediff_MySql中 DATEDIFF 函数 和 TIMESTAMPDIFF 时间 函数
- android广播接受使用,android – 广播接收器onReceive()从未调用过
- 有源汇有上下界最大流/最小流 配题(HDU 3157)