ASP.NET的分页方法(二)
第二讲主要使用到了常用的分页控件aspnetpager,这里对他就行一个简单的应用,具体大家可以到杨涛的博客上去寻找相关的DLL,
首先要先引用AspNetPager.dll,然后把这个DLL同时添加入工具箱
接下来前台依然使用repeater控件进行绑定,写法如下:
<form id="form1" runat="server">
<div>
<ul style="list-style: none">
<asp:Repeater ID="Repeater1" runat="server">
<ItemTemplate>
<li><%#Eval("Title") %></li>
</ItemTemplate>
</asp:Repeater>
</ul>
</div>
<webdiyer:AspNetPager ID="AspNetPager1" CssClass="paginator" runat="server" OnPageChanged="AspNetPager1_PageChanged">
</webdiyer:AspNetPager>
</form>
好看的样式网上也有三种左右(我目前所找到的),其中一种如下:
<style type="text/css">
/*拍拍网风格*/
.paginator {
font: 11px Arial, Helvetica, sans-serif;
padding: 10px 20px 10px ;
margin: 0px;
} .paginator a {
padding: 1px 6px;
border: solid 1px #ddd;
background: #fff;
text-decoration: none;
margin-right: 2px;
} .paginator a:visited {
padding: 1px 6px;
border: solid 1px #ddd;
background: #fff;
text-decoration: none;
} .paginator .cpb {
padding: 1px 6px;
font-weight: bold;
font-size: 13px;
border: none;
} .paginator a:hover {
color: #fff;
background: #ffa501;
border-color: #ffa501;
text-decoration: none;
}
</style>
后台的写法 如下,使用的是dataset绑定的数据源,但是似乎没有让引用AspNetPager空间,也没法直接Using AspNetPager这样引用,不过也是画蛇添足啦,没什么大影响。
using System;
using System.Collections.Generic;
using System.Configuration;
using System.Data;
using System.Data.SqlClient;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls; namespace WebApplication1
{
public partial class WebForm3 : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if(!IsPostBack)
{
GetDate();
}
} string ConStr = ConfigurationManager.ConnectionStrings["Connection"].ToString(); public void GetDate()
{
//查出所有数据
string GetDateSql = "SELECT * FROM [Info]";
//计算一共有多少条数据,这个有待于接下来计算总页数
string GetCountDataSql = "SELECT COUNT(*) FROM [Info]"; using (SqlConnection conn = new SqlConnection(ConStr))
{
conn.Open();
DataSet dt = new DataSet();
SqlDataAdapter sdt = new SqlDataAdapter(GetDateSql, conn);
//AspNetPager1.PageSize,一页显示多少数据,AspNetPager1.CurrentPageIndex:获取或设置当前显示页的索引。
//这一条语句对于dataset是一定要按照这个格式写的,具体的原理我也有点模糊,希望明白的朋友给出一些指点。
sdt.Fill(dt, (AspNetPager1.PageSize * (AspNetPager1.CurrentPageIndex - )), AspNetPager1.PageSize,"MYTABLE");
this.Repeater1.DataSource = dt;
this.Repeater1.DataBind(); SqlCommand comm = new SqlCommand(GetCountDataSql, conn);
//AspNetPager1.RecordCount:获取或设置需要分页的所有记录的总数。
string GetCountData = comm.ExecuteScalar().ToString();
this.AspNetPager1.RecordCount =Convert.ToInt32(GetCountData);
}
} protected void AspNetPager1_PageChanged(object sender, EventArgs e)
{
GetDate();
}
}
}
ASP.NET的分页方法(二)的更多相关文章
- asp.net数据分页方法
/// <summary> /// 数据分页方法 /// </summary> /// <param name="PageIndex">当前页& ...
- ASP.NET的分页方法(一)
要做一个关于分页写法的专题,这是今天的第一讲,自制分页,可能有些代码需要优化,希望大家给出一些中肯的建议 前台使用的repeater绑定的数据: <form id="form1&quo ...
- ASP.NET的分页方法(四)
这是我早先得到的一段JS代码,只需要修改一下开头的几个参数,就可以使用,不知道能否试用于静态页面呢,大家可以尝试一下 <script language="javascript" ...
- ASP.NET的分页方法(三)
第三讲是应用于MVC上面的分页,很多时候MVC要和EF表达式一起使用,但是我这个使用的最原始的ADO.NET,一样实现了这个效果.要实现这个效果首先要得到MvcPager.dll,引用之后,前台操作如 ...
- sql server两种分页方法
方法一: --分页方法一 OrderID,CustomerID, EmployeeID,OrderDate,ShippedDate,ShipName,ShipAddress,Freight from ...
- [Asp.net]AspNetPager分页组件
引言 在基于Asp.net的内网系统中,分页功能是最常用的,用的最多的组件就是AspNetPager. AspNetPager 官网:http://www.webdiyer.com/aspnetpag ...
- asp.netMVC中实现分页方法
方法一:使用传统的sql语句实现分页, public class UserprintDao如下 /// <summary> /// 取得用户申请记录列表(按分页) /// </ ...
- ASP.NET MVC分页组件MvcPager 2.0版发布暨网站全新改版
MvcPager分页控件是在ASP.NET MVC Web应用程序中实现分页功能的一系列扩展方法,该分页控件的最初的实现方法借鉴了网上流行的部分源代码, 尤其是ScottGu的PagedList< ...
- ASP.NET MVC分页实现之改进版-增加同一个视图可设置多个分页
我之前就已经实现了ASP.NET MVC分页(查看该博文),但它有局限性,必须确保在同一个视图中只能有一处分页,若需要在同一个视图中设置多个分页,却无能为力,为此,我重新对原先的代码进行了优化,增加了 ...
随机推荐
- 解同余式ax ≡ c(mod m)
将式子变形为 ax-c=my 可以看出原式有解当且仅当线性方程ax-my=c有解 设g = gcd(a, m) 则所有形如ax-my的数都是g的倍数 因此如果g不整除c则原方程无解. 下面假设g整除c ...
- 漫游Kafka设计篇之消息传输的事务定义
之前讨论了consumer和producer是怎么工作的,现在来讨论一下数据传输方面.数据传输的事务定义通常有以下三种级别: 最多一次: 消息不会被重复发送,最多被传输一次,但也有可能一次不传输. 最 ...
- HDU 5340 Three Palindromes (Manacher)
题意: 判断是否能将字符串S分成三段非空回文串. 思路: 先预处理出前缀回文串和后缀回文串的位置,将位置分别装入两个集合中,O(n). 针对每个前缀回文串的终点位置,挑出不相交的后缀回文串,对中间那段 ...
- web前端调试工具
1.firebug入门指南 http://www.ruanyifeng.com/blog/2008/06/firebug_tutorial.html 2. Console命令详解,让调试js代码变得更 ...
- yaf框架流程一
资料参考: Yaf是一个C语言编写的PHP框架,以php扩展的形式. 是 laruence(鸟哥) 的作品 laruence 是PHP 开发组成员, PECL 开发者. Yaf, Taint等Pec ...
- 【英语】Bingo口语笔记(77) - 临时改变计划的表达
- 【转】Github轻松上手5-站在巨人的肩膀上(Fork)
转自:http://blog.sina.com.cn/s/blog_4b55f6860100zzj3.html 有时候你可能想给别人的项目出把力,或者想以别人的项目作为自己项目的起点,在Github里 ...
- mysql (master/slave)复制原理及配置
1 复制概述 Mysql内建的复制功能是构建大型,高性能应用程序的基础.将Mysql的数据分布到多个系统上去,这种分布的机制,是通过将Mysql的某一台主机的数据复制到其它主机(slaves)上,并重 ...
- org.unsaved transient instance - save the transient instance before flushing: bug解决方案
最近开发和学习过程中,遇到很多零碎的知识点,在此简单地记录下: 1.遇如下bug: org.unsaved transient instance - save the transient instan ...
- Google搜索的常用技巧
个人搜索方案 1.选择合适的搜索词,一些行业术语或专家名字可以带来更加高质量的结果. 2.搜索词手动使用空格分隔,先进行第一次搜索,看搜索结果标题是否满足预期,如果不满足,采用更换关键词,添加关键词, ...