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分页源码,分享给大家,可作参考的更多相关文章

  1. 45个android实例源码分享

    分享45个android实例源码,很好很强大 http://www.apkbus.com/android-20978-1-1.html andriod闹钟源代码 http://www.apkbus.c ...

  2. [DeviceOne开发]-土地销售项目源码分享

    一.简介 这个是一个真实项目开源,虽然不是很花哨,但是中规中矩,小细节处理的也很好,非常值得参考和借鉴.里面的数据都缓存到本地,可以离线运行,但是调整一下代码,马上就可以和服务端完全对接.后续会有详细 ...

  3. WP8.1&Win10幸运大转盘源码分享

    先AD一下我的群:Win10开发者群:53078485 最近在写一个APP,其中需要一个转盘动画的源码,找了很多但是都没有找到,无奈只好自己来写,写完效果自己还是比较满意的,分享出来,有需要的童鞋可以 ...

  4. 3D语音天气球(源码分享)——完结篇

    转载请注明本文出自大苞米的博客(http://blog.csdn.net/a396901990),谢谢支持! 开篇废话: 由于这篇文章是本系列最后一篇,有必要进行简单的回顾和思路整理. 这个程序是由两 ...

  5. 3D语音天气球(源码分享)——在Unity中使用Android语音服务

    转载请注明本文出自大苞米的博客(http://blog.csdn.net/a396901990),谢谢支持! 开篇废话: 这个项目准备分四部分介绍: 一:创建可旋转的"3D球":3 ...

  6. 3D语音天气球(源码分享)——通过天气服务动态创建3D球

    转载请注明本文出自大苞米的博客(http://blog.csdn.net/a396901990),谢谢支持! 开篇废话: 这个项目准备分四部分介绍: 一:创建可旋转的"3D球":3 ...

  7. 3D语音天气球(源码分享)——创建可旋转的3D球

    开篇废话: 在9月份时参加了一个网站的比赛,比赛的题目是需要使用第三方平台提供的服务做出创意的作品. 于是我选择使用语音服务,天气服务,Unity3D,Android来制作一个3D语音天气预报,我给它 ...

  8. android版猜拳游戏源码分享

    android版猜拳游戏源码分享安卓版猜拳游戏源码,该文件中带有安装测试包的,这个游戏源码比较简单的,现在有两个代码,一个自定义VIEW的,一个就是普通的imageView图片,游戏非常适合一些新手的 ...

  9. 一款非常简单的android音乐播放器源码分享给大家

    一款非常简单的android音乐播放器源码分享给大家,该应用虽然很小,大家常用的播放器功能基本实现了,可能有点还不够完善,大家也可以自己完善一下,源码在源码天堂那里已经有了,大家可以到那里下载学习吧. ...

随机推荐

  1. Frame动画实战

    Android动画分为Tween动画和Frame动画,Tween动画主要包括图片的放大缩小.旋转.透明度变化.移动等等操作:Frame动画则简单得多了,就是把一张张的图片连续播放产生动画效果. 本节主 ...

  2. ENTITYFRAMEWORKCORE 二使用配置文件来配置数据库链接

    首先 配置文件现在已经变成appsettings.json, 先添加一个连接字符串 "ConnectionStrings": { "PWDatabase": & ...

  3. CentOS7 下 安装 supervisor以及使用

    CentOS7 下 安装 supervisor 以及使用 手动安装 [注] linux环境必须安装 python 1.获取supervisor包:[https://pypi.python.org/py ...

  4. tabhost使用

    Tabhost用法 使用方法一:使用同一个布局文件 在xml中如此定义tabhost: <RelativeLayout xmlns:android="http://schemas.an ...

  5. React Native 的ES5 ES6写法对照表

    模块 引用 在ES5里,如果使用CommonJS标准,引入React包基本通过require进行,代码类似这样: //ES5 var React = require("react" ...

  6. 微信公众号红包接口开发PHP开发 CA证书出错,请登陆微信支付商户平台下载证书

    微信红包接口调试过程中一直提示“CA证书出错,请登陆微信支付商户平台下载证书”,经反复调试,大致解决方法如下: 1.首先确保CA证书的路径是否正确,一定得是绝对路径,因为是PHP开发的,这里需要三个p ...

  7. C++ 类继承的对象布局

    C++多重继承下,对象布局与编译器,是否为虚拟继承都有很大关系,下面将逐一分析其中的差别,相同点为都按照类继承的先后顺序布局(类内按照虚表.成员声明先后顺序排列).该类情况为子类按照继承顺序排列,如c ...

  8. C#产生不重复随机数

    static int GetRandomSeed( ) { byte[] bytes = new byte[4]; System.Security.Cryptography.RNGCryptoServ ...

  9. 新冲刺Sprint3(第五天)

    一.Sprint介绍 实现商品.服务信息存入数据库,实现商品图片传输(服务器传输),点击商品.服务进入商品.商品详情.商品.服务按此标准建立数据库.    二.Sprint周期 看板: 燃尽图:

  10. fcitx error

    (ERROR-2016 /build/fcitx-J2yftF/fcitx-4.2.9.1/src/lib/fcitx/ui.c:165) no usable user interface.(ERRO ...