AspNetPager分页实际应用
---恢复内容开始---
首先,这个分页是快速开发的一种,弊端就是一次查询数据库全部,然后分页显示.
注意:
1,最好绑定的数据是一个list格式!
1首先打开
http://www.webdiyer.com 下载AspNetPager
然后引用这个dll文件
然后在aspx前台最上面引用该dll
<%@ Register Assembly="AspNetPager" Namespace="Wuqi.Webdiyer" TagPrefix="webdiyer" %>
2 在展示数据用的一些控件下面复制上
<webdiyer:AspNetPager ID="AspNetPager1" runat="server" FirstPageText="首页" LastPageText="最后一页"
NextPageText="下一页" PrevPageText="上一页" OnPageChanged="AspNetPager1_PageChanged"
Font-Size="X-Large" ForeColor="#336699" HorizontalAlign="Center">
</webdiyer:AspNetPager>
3 在后台要写上这样一个方法
protected void AspNetPager1_PageChanged(object sender, EventArgs e)
{
BindDataTable();
}
4
BindDataTable();这个方法就是绑定数据的方法
private void BindDataTable()
{
StringBuilder sb = new StringBuilder(); //GetAllList 是查询数据,返回的是DataSet格式的,
DataSet ds = bll.GetAllList(sb.ToString());
//计算总共有多少条
AspNetPager1.RecordCount = ds.Tables[].Rows.Count;
//每页显示多少条
AspNetPager1.PageSize = ;
PagedDataSource pds = new PagedDataSource();
pds.DataSource = ds.Tables[].Rows.ToString();
pds.AllowCustomPaging = true;
pds.AllowPaging = true;
pds.CurrentPageIndex = AspNetPager1.CurrentPageIndex - ;
pds.PageSize = AspNetPager1.PageSize;
pagesize = AspNetPager1.PageSize;
int i = (pds.CurrentPageIndex) * pds.PageSize;
pageindex = pds.CurrentPageIndex;
//这是创建一个实体类,来把DataSet格式转换list格式
List<ChaxunClass> list = new List<ChaxunClass>();
//遍历数据,已list格式输出
foreach (DataRow row in ds.Tables[].Rows)
{
ChaxunClass cl = new ChaxunClass();
cl.num = row["第三方卡"].ToString(); list.Add(cl);
}
this.Repeater1.DataSource = list.Skip((pds.CurrentPageIndex) * pds.PageSize).Take(pds.PageSize); ;
this.Repeater1.DataBind();
}
以上是最初的 ,后来研究下 还是在这样方便,一个分页干吗要用2个控件
后台改成,
DataSet ds = bll.GetAllList(sb.ToString());
int PageCount = AspNetPager1.RecordCount = ds.Tables[0].Rows.Count;
pagesize = AspNetPager1.PageSize = 10;
pageindex = AspNetPager1.CurrentPageIndex;
List<ChaxunClass> list = new List<ChaxunClass>();
foreach (DataRow row in ds.Tables[0].Rows)
{
ChaxunClass cl = new ChaxunClass();
cl.num = row["第三方卡"].ToString();
list.Add(cl);
}
this.Repeater1.DataSource = list.Skip((pagesize) * (pageindex - 1)).Take(pagesize);
this.Repeater1.DataBind();
前台索引自增排序这样写
<%# (pageindex - 1) *pagesize +Container.ItemIndex + 1%>
倒序排序这样写
<%# (PageCount - (pageindex - 1) * pagesize)-Container.ItemIndex%>
AspNetPager分页实际应用的更多相关文章
- AspNetPager分页控件
AspNetPager分页控件解决了分页中的很多问题,直接采用该控件进行分页处理,会将繁琐的分页工作变得简单化,下面是我如何使用AspNetPager控件进行分页处理的详细代码:1.首先到www.we ...
- 【转】AspNetPager分页控件用法
AspNetPager分页控件解决了分页中的很多问题,直接采用该控件进行分页处理,会将繁琐的分页工作变得简单化,下面是我如何使用AspNetPager控件进行分页处理的详细代码: 1.首先到www.w ...
- AspNetPager分页
1.页面部分 <%@ Register Assembly="AspNetPager" Namespace="Wuqi.Webdiyer" TagPrefi ...
- 【Bootstrap3.0建站笔记三】AspNetPager分页,每一列都可排序
1.AspNetPager分页,实现每一列都可排序: (1).须要将默认排序字段放在HTML页面中. (2).排序字段放置为td节点的属性. 如图: 实现的效果 ...
- 给AspNetPager分页控件添加bootstrap样式
AspNetPager分页控件算是比较好用的一个分页控件了.想要结合bootstrap使用,官方代码入口 .pagination a[disabled]{ color: #777;cursor: no ...
- C# Repeater、webdiyer:AspNetPager分页 AspNetPager分页样式
版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/vaecnfeilong/article/details/32712611 AspNetPager分页 ...
- NHibernate初学三之条件查询(Criteria Queries)与AspNetPager分页实例
NHibernate除了SQL与HQL两种查询操作外,还有一种就是条件查询Criteria,本文将从网上整理一些Criteria的理论及小实例,最后通过一个结合AspNetPager分页来加深理解,必 ...
- PagedDataSource数据绑定控件和AspNetPager分页控件结合使用列表分页
1.引用AspNetPager.dll. 2.放置Repeater数据绑定控件. <asp:Repeater ID="Repeater1" runat="serve ...
- .net中实现aspnetpager分页
第一步首先导入aspnetpager控件,然后再把他从工具箱中拖出,代码如下: <webdiyer:AspNetPager ID="aspnetpager1" runat= ...
- AspNetPager分页控件样式的使用
分页是Web应用程序中最常用到的功能之一,AspNetPager 简单实用,应用到项目后台中,棒极了! 自定义样式: <style type="text/css"> ...
随机推荐
- 基于MMSeg算法的中文分词类库
原文:基于MMSeg算法的中文分词类库 最近在实现基于lucene.net的搜索方案,涉及中文分词,找了很多,最终选择了MMSeg4j,但MMSeg4j只有Java版,在博客园上找到了*王员外*(ht ...
- OCA读书笔记(3) - 使用DBCA创建Oracle数据库
Objectives: •Create a database by using the Database Configuration Assistant (DBCA) •Generate databa ...
- ORACLE 更改username
曾经一直常常改动oracle的用户password,但非常少改动username的. 曾经仅仅能创建一个用户1.然后将用户2数据导入到用户1.然后经用户1删掉,这样很麻烦并且耗时,今天就整理了下怎样改 ...
- __NSAutoreleaseNoPool(): ... utoreleased with no pool in place - just leaking
__NSAutoreleaseNoPool(): ... utoreleased with no pool in place - just leaking 我的平台 mac os 10.6 Xcode ...
- JavaScript面向对象编程(10)高速构建继承关系之对象拷贝
前面的样例我们是通过构造器创建对象.而且希望该对象继承来自另外一个构造器的对象 我们也能够直接面向一个对象来达成继承的目的.使用下属步骤: 1.拷贝一个对象 2.给新对象加入属性 /** * 通过拷贝 ...
- 《转》MFC网络编程学习
原地址:http://www.cnblogs.com/renyuan/archive/2013/06/04/3117006.html要学习好网路编程,主要看以下几个方面: 1.掌握概念,诸如:同步(S ...
- linux内核函数之 blk_plug
分析: /* * blk_plug permits building a queue of related requests by holding the I/O * fragments for a ...
- HDU1385 【输出字典序最小的最短路】
这题经过的结点比较好处理. 主要是字典序的处理. 先是floyd做法,采用记录后驱的方法. path[i][j]=j[初始化...] #include <iostream> #inclu ...
- PCI 总线学习笔记
转载请注明出处:http://blog.csdn.net/lg2lh/article/details/8042008 PCI的基本协议这里就不介绍了,由于一般的芯片协议都是集成好的,我仅仅须要大体了解 ...
- android-包签名
android-包签名 应用能在Android 系统上安装必须是经过有私有key的证书数据签名.Android系统通过证书确定应用的作者,和与应用建立信任关系.证书不会用于控制应用的安装.证书不需要权 ...