1、AspNetPager简介

  AspNetPager是一款开源、简单易用、可定制化等等各种优点的Web分页控件。

2、使用方法

  1)下载AspNetPager.dll文件(http://www.webdiyer.com/aspnetpager/downloads/

  2)添加对该文件的引用

  3)工具栏右键-选择项,把该dll控件添加进工具栏

  4)把该控件拖进设计界面,设置控件的各种属性如下:

<webdiyer:AspNetPager ID="AspNetPager1" runat="server" FirstPageText='首页' LastPageText='尾页'
PagingButtonSpacing="10px" ShowPageIndexBox="Always" CustomInfoHTML="共%RecordCount%条,第%CurrentPageIndex%页 /共%PageCount% 页"
NextPageText="下一页" PrevPageText="上一页" ShowCustomInfoSection="Left" SubmitButtonText="Go"
TextAfterPageIndexBox="页" TextBeforePageIndexBox="转到 " UrlPaging="True" CustomInfoSectionWidth="20%"
CustomInfoTextAlign="Center" OnPageChanged="AspNetPager1_PageChanged" PageSize="" CurrentPageButtonPosition="Center">
</webdiyer:AspNetPager>

属性的意思大概都看的明白,如果看不明白的就去http://www.webdiyer.com/aspnetpager/faq/ 自己研究。

如果不想显示“共X条,第X页/共X页”,可以不设置CustomInfoHTML属性

  5)编写后台cs代码如下:

    protected void Page_Load(object sender, EventArgs e)
{
BindGv(,AspNetPager1.PageSize);//绑定第一页数据
} public void BindGv(int pageIndex,int pageSize)
{
//连接数据库
string connStr = "Data source=.;Initial Catalog=EFText;Integrated Security=True";
SqlConnection conn = new SqlConnection(connStr);
conn.Open();
string sql = "select * from Texts";
SqlDataAdapter adapter = new SqlDataAdapter(sql, conn);
DataTable dt = new DataTable();
DataSet ds = new DataSet();
adapter.Fill(ds, (pageIndex - ) * pageSize,pageSize,"a");//获取该页数据
adapter.Fill(dt);
AspNetPager1.AlwaysShow = true;
AspNetPager1.RecordCount = dt.Rows.Count;//记录总数
AspNetPager1.CurrentPageButtonClass = "cpb";//当前选中页码
GridView1.DataSource = ds.Tables[];
GridView1.DataBind();
}
protected void AspNetPager1_PageChanged(object sender, EventArgs e)
{
BindGv(AspNetPager1.CurrentPageIndex,AspNetPager1.PageSize);
}

  注:这里获取到的数据源是分页后的,即代码中的DataSet,但不一定非要使用SqlDataAdapter,只要把要获取的分页数据查询出来即可,可以自己写分页sql语句,也可以写存储过程,    不会写可以去网上自动生成,地址:http://www.webdiyer.com/aspnetpager/spgenerator/

    这里的代码没有使用任何框架和工具类,真正项目中使用时最好把连接数据库和执行sql语句的代码写到工具类中

  6)写完以上代码后分页功能就已经实现了,但是比较丑,因此还要再加一些样式,这里我整理了几个看起来还凑合的css代码:

  使用方法:在AspnetPager控件外面套一个div,并设置该div的class属性为css名(pager)

        .pager
{
width: 95%;
margin: 10px;
line-height: 20px;
display: block;
}
.pager span
{
border: 1px solid #CCCCCC;
margin: 0 5px;
padding: 1px 6px;
float: left;
}
.pager a
{
border: 1px solid #CCCCCC;
display: block;
overflow: hidden;
float: left;
margin: 0 5px;
padding: 1px 6px;
}
.pager a:hover
{
border: 1 solid red;
background-color: #993399;
color: #ffffff;
margin: 0 5px;
padding: 1px 6px;
}

  注:使用上面这个css需要在后台把设置CurrentPageButtonClass 的那句代码注释掉。

        .pager1
{
font: 11px Arial, Helvetica, sans-serif;
padding: 10px 20px 10px 0;
margin: 0px;
}
.pager1 a
{
padding: 1px 6px;
border: solid 1px #ddd;
background: #fff;
text-decoration: none;
margin-right: 2px;
}
.pager1 a:visited
{
padding: 1px 6px;
border: solid 1px #ddd;
background: #fff;
text-decoration: none;
}
.pager1 .cpb
{
padding: 1px 6px;
font-weight: bold;
font-size: 13px;
border: none;
color:#ffa501;
}
.pager1 a:hover
{
color: #fff;
background: #ffa501;
border-color: #ffa501;
text-decoration: none;
}

        .pager2
{
color: #999;
}
.pager2 a, .pager2 .cpb
{
text-decoration: none;
float: left;
padding: 0 5px;
border: 1px solid #ddd;
background: #ffff;
margin: 0 2px;
font-size: 11px;
color: #000;
}
.pager2 a:hover
{
background-color: #E61636;
color: #fff;
border: 1px solid #E61636;
text-decoration: none;
}
.pager2 .cpb
{
font-weight: bold;
color: #fff;
background: #E61636;
border: 1px solid #E61636;
}

        .pager3
{
font: 12px Arial, Helvetica, sans-serif;
padding: 10px 20px 10px 0;
margin: 0px;
}
.pager3 a
{
border: solid 1px #ccc;
color: #0063dc;
cursor: pointer;
text-decoration: none;
}
.pager3 a:visited
{
padding: 1px 6px;
border: solid 1px #ddd;
background: #fff;
text-decoration: none;
}
.pager3 .cpb
{
border: 1px solid #F50;
font-weight:;
color: #F50;
background-color: #ffeee5;
}
.pager3 a:hover
{
border: solid 1px #F50;
color: #f60;
text-decoration: none;
}
.pager3 a, .pager3 a:visited, .pager3 .cpb, .pager3 a:hover
{
float: left;
height: 16px;
line-height: 16px;
min-width: 10px;
_width: 10px;
margin-right: 5px;
text-align: center;
white-space: nowrap;
font-size: 12px;
font-family: Arial,SimSun;
padding: 0 3px;
}

3、后记

  AspNetPager的功能还有很多,如逆向分页、Url重写、自定义按钮图片、Ajax分页等等,有兴趣的可以自己上网学习,地址:http://www.webdiyer.com/aspnetpager/

  但AspNetPager只能在WebForm中使用,想在MVC中使用此控件需要学习另一个相似的控件MvcPager,地址:http://www.webdiyer.com/mvcpager/

分页控件AspNetPager学习笔记的更多相关文章

  1. 第三方分页控件aspnetPager出现问题解决方法

    问题描述: 今天在打开以前的项目使用vs2013打开后并且生成解决方案的时候发现报错了.经过检查发现是由于第三方分页控件aspnetPager在页面上不能引用到了. 解决方法: 1. 首先将AspNe ...

  2. web分页控件AspNetPager的使用

    首先要先引用AspNetPager.dll文件 然后在<html>上面添加下面代码: <%@ Register Assembly="AspNetPager" Na ...

  3. Repeater + 分页控件 AspNetPager 研究

    <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default3.aspx.cs ...

  4. 分页控件 AspNetPager的使用

    1.引用AspNetPager.dll插件 1.下载AspNetPager.dll插件到bin文件夹中. 2.在“引用中添加引用”(不然报错:未能在全局命名空间中找到类型或命名名空间名称“Wuqi”) ...

  5. C# - 杨涛分页控件AspNetPager

    http://www.webdiyer.com/downloads/ 前台 <%@ Page Language="C#" AutoEventWireup="true ...

  6. asp.net分页控件库

    AspNetPager分页控件 AspNetPager分页控件解决了分页中的很多问题,直接采用该控件进行分页处理,会将繁琐的分页工作变得简单化,下面是我如何使用AspNetPager控件进行分页处理的 ...

  7. .net core 学习笔记(1)-分页控件的使用

    最近有个小项目,用.net core开发练练手,碰到的第一个问题就是分页控件的问题,自己写太费时间,上网查了下,发现有人已经封装好了的,就拿过来用了,分页控件github:https://github ...

  8. AspNetPager分页控件配置

    AspNetPager是asp.net中常用的分页控件,下载AspNetPager.dll,添加引用,在工具栏就可以看到AspNetPager控件: 拖过来之后,设置如下属性: <webdiye ...

  9. AspNetPager分页控件

    AspNetPager分页控件解决了分页中的很多问题,直接采用该控件进行分页处理,会将繁琐的分页工作变得简单化,下面是我如何使用AspNetPager控件进行分页处理的详细代码:1.首先到www.we ...

随机推荐

  1. php循环生成的表单如何获得其各项值案例

    思路:输入框和按钮是用for循环生成的,不但要获取输入框里的各项值,并且要获取点击按钮的值,要知道是那个按钮被点击了,这里以生成5个为例.如图: 这是提交页面,点击的是“小米”. 这是显示结果,测试显 ...

  2. win10新特性,ubuntu子系统(安装及配置)

    最新版win10下可以直接跑ubuntu镜像,直接入正题. 这里如果你没有可能是你的版本不是最新的,我这里是最新的win10直接是有这个功能的.勾选后会要求重启,确定即可. 然后win键弹出搜索,输入 ...

  3. docker的资源限制cpuset cpuquota memory

    总结 目前,公司7u已经不再使用lxc,转而使用libcontainer 即native docker对cpuquota的支持目前是有问题的,一般大家使用docker的时候,主要是对memory,cp ...

  4. 二维动态规划——Palindrome

    Palindrome Description A palindrome is a symmetrical string, that is, a string read identically from ...

  5. Spring IO Platform简介及示例

    什么是Spring IO Platform Spring IO Platform,简单的可以认为是一个依赖维护平台,该平台将相关依赖汇聚到一起,针对每个依赖,都提供了一个版本号: 这些版本对应的依赖都 ...

  6. Bootstrap入门(四)表格

    Bootstrap入门(四)表格 <table>标签 首先,引入bootstrap的css文件,然后表格内容放在一个class为table的<table>标签中(class=& ...

  7. 【js 编程艺术】小制作三

    1.html文件 <!DOCTYPE html> <html> <head> <meta charset="utf-8"> < ...

  8. PLSQL语法深入浅出

    一:PLSQL概览:PLSQL 是Oracle公司在SQL基础上进行扩展而成的一种过程语言.PLSQL提供了典型的高级语言特 性,包括封装,例外处理机制,信息隐藏,面向对象等:并把新的编程思想带到了数 ...

  9. Xcode版本太低引发的bug,xcode各种版本下载方式详解

    问题描述: mac系统10.9.5 .之前用的xcode 是5.1.接sdk时,一直报错,编译不过去.最后发现原因是xcode版本太低导致的. 于是去网上找xcode历史版本下载.因为系统版本原因,我 ...

  10. 类似qq空间的无限回复怎么实现??

    在开发网站的时候遇到这样一个问题,下面是自己的一些思路: 1.把数据库简单的设计出来了 2.这是自己写的简单的例子 3.图表形式 1:   1.发表一篇文章 2:  2给1评论 3:  3给2评论 2 ...