cPage分页源码,分享给大家,可作参考
cPage是asp.net分页控件,也可以叫做分页组件,更确切的应该叫做分页模块,也或者叫做分页通用代码。
cPage,版本3.2,源码如下:
using System; namespace cPage
{
/// <summary>
/// 分页方法
/// </summary>
public class mPage
{
/// <summary>
/// 分页处理
/// </summary>
/// <param name="recordCount">记录总数</param>
/// <param name="pageSize">每页记录数</param>
/// <param name="pageNum">中间页码数</param>
/// <param name="pageIndex">当前页码</param>
/// <param name="beginIndex">返回的首记录标识</param>
/// <param name="endIndex">返回的尾记录标识</param>
/// <param name="clink">链接地址</param>
/// <returns></returns>
public static string getPage(int recordCount, int pageSize, int pageNum, int pageIndex, out int beginIndex, out int endIndex, string clink)
{
int pcount = recordCount / pageSize;
if (recordCount % pageSize > 0)
pcount = pcount + 1;
if (pageIndex < 1) pageIndex = 1;
if (pageIndex > pcount) pageIndex = pcount; beginIndex = pageSize * (pageIndex - 1) + 1;
endIndex = pageSize * pageIndex; int num = pageNum; //中间显示页码数量 string str = ""; str = str + "共<span class='pagecolorc'>" + recordCount + "</span>条记录 <span class='pagecolorc'>" + pageIndex + "</span> / <span class='pagecolorc'>" + pcount + "</span> 页 "; if (pcount > 1)
{ int wzleft, wzright, wzpagecount, wzcurrentpage, wzpagecountleft;
wzcurrentpage = pageIndex;
wzpagecount = pcount; if (wzcurrentpage < num)
wzleft = 0;
else
wzleft = wzcurrentpage / num; wzright = wzcurrentpage % num; if (wzright == 0)
wzleft = wzleft - 1; if (wzcurrentpage - 1 > 0)
str = str + " <a class='pagecolor pagenum' href='" + clink.Replace("[#p#]", (wzcurrentpage - 1).ToString()) + "' title='上一页'>上一页</a> "; if (wzcurrentpage > num)
{
if (wzcurrentpage != 1 && wzcurrentpage > num)
str = str + " <a class='pagecolor pagenum' href='" + clink.Replace("[#p#]","1") + "'>1</a> "; str = str + " <a class='pagecolor pagenum' href='" + clink.Replace("[#p#]", (wzleft * num).ToString()) + "' title='上一组'>...</a> ";
} for (int i = 1; i <= num; i++)
{
if (wzleft * num + i == wzcurrentpage)
str = str + " <a class='pagecolorc pagecur'>" + (wzleft * num + i) + "</a> ";
else
str = str + " <a class='pagecolor pagenum' href='" + clink.Replace("[#p#]", (wzleft * num + i).ToString()) + "'>" + (wzleft * num + i) + "</a> "; if (wzleft * num + i == wzpagecount)
break;
} wzpagecountleft = wzpagecount / num; if (wzpagecount % num == 0)
wzpagecountleft = wzpagecountleft - 1; if (wzleft < wzpagecountleft)
{
str = str + " <a class='pagecolor pagenum' href='" + clink.Replace("[#p#]", (wzleft * num + (pageNum + 1)).ToString()) + "' title='下一组'>...</a> "; if (wzcurrentpage != wzpagecount && wzpagecount > num)
str = str + " <a class='pagecolor pagenum' href='" + clink.Replace("[#p#]", wzpagecount.ToString()) + "'>" + wzpagecount + "</a> ";
} if (wzcurrentpage + 1 <= pcount)
str = str + " <a class='pagecolor pagenum' href='" + clink.Replace("[#p#]", (wzcurrentpage + 1).ToString()) + "' title='下一页'>下一页</a> "; } return str;
} }
}
将以上代码添加到mPage.cs文件内,编译成dll就可以使用了。
也可以点击这里下载。
也可以站内下载,点这里
版权所有,bubufx,禁止转载!
cPage分页源码,分享给大家,可作参考的更多相关文章
- 45个android实例源码分享
分享45个android实例源码,很好很强大 http://www.apkbus.com/android-20978-1-1.html andriod闹钟源代码 http://www.apkbus.c ...
- [DeviceOne开发]-土地销售项目源码分享
一.简介 这个是一个真实项目开源,虽然不是很花哨,但是中规中矩,小细节处理的也很好,非常值得参考和借鉴.里面的数据都缓存到本地,可以离线运行,但是调整一下代码,马上就可以和服务端完全对接.后续会有详细 ...
- WP8.1&Win10幸运大转盘源码分享
先AD一下我的群:Win10开发者群:53078485 最近在写一个APP,其中需要一个转盘动画的源码,找了很多但是都没有找到,无奈只好自己来写,写完效果自己还是比较满意的,分享出来,有需要的童鞋可以 ...
- 3D语音天气球(源码分享)——完结篇
转载请注明本文出自大苞米的博客(http://blog.csdn.net/a396901990),谢谢支持! 开篇废话: 由于这篇文章是本系列最后一篇,有必要进行简单的回顾和思路整理. 这个程序是由两 ...
- 3D语音天气球(源码分享)——在Unity中使用Android语音服务
转载请注明本文出自大苞米的博客(http://blog.csdn.net/a396901990),谢谢支持! 开篇废话: 这个项目准备分四部分介绍: 一:创建可旋转的"3D球":3 ...
- 3D语音天气球(源码分享)——通过天气服务动态创建3D球
转载请注明本文出自大苞米的博客(http://blog.csdn.net/a396901990),谢谢支持! 开篇废话: 这个项目准备分四部分介绍: 一:创建可旋转的"3D球":3 ...
- 3D语音天气球(源码分享)——创建可旋转的3D球
开篇废话: 在9月份时参加了一个网站的比赛,比赛的题目是需要使用第三方平台提供的服务做出创意的作品. 于是我选择使用语音服务,天气服务,Unity3D,Android来制作一个3D语音天气预报,我给它 ...
- android版猜拳游戏源码分享
android版猜拳游戏源码分享安卓版猜拳游戏源码,该文件中带有安装测试包的,这个游戏源码比较简单的,现在有两个代码,一个自定义VIEW的,一个就是普通的imageView图片,游戏非常适合一些新手的 ...
- 一款非常简单的android音乐播放器源码分享给大家
一款非常简单的android音乐播放器源码分享给大家,该应用虽然很小,大家常用的播放器功能基本实现了,可能有点还不够完善,大家也可以自己完善一下,源码在源码天堂那里已经有了,大家可以到那里下载学习吧. ...
随机推荐
- 自增序号,而且默认变量就是$i,也就是说在你的volist标签之内,可以直接使用$i
<volist name="vlist" id="v"> <{$i}> // 直接使用$i </volist>
- app的自动更新(调用DownloadManager)
具体思路为:调用接口与服务器版本对比,当服务器版本号大于本地的,调用DownloadManager进行下载,之前也试过很多方法,但是兼容性都不是很好,还有一点要注意的是,在这里我并没有设置固定的下载路 ...
- 软件测试第二次作业——Fault,Failure,Error辨析与设计测试用例
Fault 静态错误 ,Failure 外部错误 ,Error 内部错误 问题答案 第一题 1.1 当数组x内的元素≥2时,该循环不会检测到x[0]这个元素. 1.2 test: x=[2, 3, 2 ...
- SPM Homework 1 —A Project From My Personal Life
我所完成的一个项目是上学期WEB的期末作业. 项目本质:使用Java Web编写一个网上银行系统,并实现老师所给的几项要求:分角色2015登陆.开户.存取款.转款.查看明细等. 最初目标:能够完成所有 ...
- ASP.NET 学习记录之一
(放着期末考试不复习,我每天废寝忘食地阅读从图书馆借来的ASP.NET相关专业书籍,到现在快一个星期,终于掌握了点东西,但是一拿到真刀真枪就做不出来什么了:老师把实验室打开,我就在这码码代码咯) As ...
- 【转】Native JavaScript Data-Binding
原文转自:http://www.sellarafaeli.com/blog/native_javascript_data_binding Two-way data-binding is such an ...
- iOS 网络监测
iOS网络监测,监测单个页面写在ViewController里,监测全部写在AppDelegate中,而且不用终止 - (void)viewDidLoad { [super viewDidLoad]; ...
- 解决织梦DEDEcms指定arclist的特定ID排序的方法
转载网址:http://blog.hrseo.net/xuexi/184.html 替换/include/taglib/arclist.lib.php这个文件,下载链接: http://pan.bai ...
- C++类大小
对于C++中类的大小,主要针对于无成员的空类大小,编译器会对该类进行优化,情况主要分为是否有虚表(虚函数)两种类型,对于无虚函数的类,该类大小均为1个字节(编译器插入一个char表示该类的存在),而出 ...
- sql 语句 事务
begin transactionbegin insert into BlogUsers(BlogName) values ('测试'); insert into Posts(Po ...