第二讲主要使用到了常用的分页控件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的分页方法(二)的更多相关文章

  1. asp.net数据分页方法

    /// <summary> /// 数据分页方法 /// </summary> /// <param name="PageIndex">当前页& ...

  2. ASP.NET的分页方法(一)

    要做一个关于分页写法的专题,这是今天的第一讲,自制分页,可能有些代码需要优化,希望大家给出一些中肯的建议 前台使用的repeater绑定的数据: <form id="form1&quo ...

  3. ASP.NET的分页方法(四)

    这是我早先得到的一段JS代码,只需要修改一下开头的几个参数,就可以使用,不知道能否试用于静态页面呢,大家可以尝试一下 <script language="javascript" ...

  4. ASP.NET的分页方法(三)

    第三讲是应用于MVC上面的分页,很多时候MVC要和EF表达式一起使用,但是我这个使用的最原始的ADO.NET,一样实现了这个效果.要实现这个效果首先要得到MvcPager.dll,引用之后,前台操作如 ...

  5. sql server两种分页方法

    方法一: --分页方法一 OrderID,CustomerID, EmployeeID,OrderDate,ShippedDate,ShipName,ShipAddress,Freight from ...

  6. [Asp.net]AspNetPager分页组件

    引言 在基于Asp.net的内网系统中,分页功能是最常用的,用的最多的组件就是AspNetPager. AspNetPager 官网:http://www.webdiyer.com/aspnetpag ...

  7. asp.netMVC中实现分页方法

    方法一:使用传统的sql语句实现分页,    public class UserprintDao如下 /// <summary> /// 取得用户申请记录列表(按分页) /// </ ...

  8. ASP.NET MVC分页组件MvcPager 2.0版发布暨网站全新改版

    MvcPager分页控件是在ASP.NET MVC Web应用程序中实现分页功能的一系列扩展方法,该分页控件的最初的实现方法借鉴了网上流行的部分源代码, 尤其是ScottGu的PagedList< ...

  9. ASP.NET MVC分页实现之改进版-增加同一个视图可设置多个分页

    我之前就已经实现了ASP.NET MVC分页(查看该博文),但它有局限性,必须确保在同一个视图中只能有一处分页,若需要在同一个视图中设置多个分页,却无能为力,为此,我重新对原先的代码进行了优化,增加了 ...

随机推荐

  1. C#操作office进行Excel图表创建,保存本地,word获取

    ,新建C#控制台应用程序(Excel创建图表) using System; using System.Collections.Generic; using System.Linq; using Sys ...

  2. GrepCode

    /***************************************************************************** * GrepCode * 声明: * 最近 ...

  3. (六)6.17 Neurons Networks convolutional neural network(cnn)

    之前所讲的图像处理都是小 patchs ,比如28*28或者36*36之类,考虑如下情形,对于一副1000*1000的图像,即106,当隐层也有106节点时,那么W(1)的数量将达到1012级别,为了 ...

  4. NSThread小笔记

    接口 Initializing an NSThread Object – init – initWithTarget:selector:object: Starting a Thread + deta ...

  5. Android下实现win8的按钮点击效果

    原理就是自定义一个imageButton,实现动画效果 demo源码下载地址:  请戳这里----------------> 关于回弹张力的效果扩展,可以参考Facebook的开源动画库rebo ...

  6. 计算机网络——TCP与UDP协议详解

    根据应用程序的不同需求,运输层需要两种不同的运输协议,即面向连接的TCP和无连接的UDP. TCP:传输控制协议 TCP特点: 1)TCP是面向连接的运输层协议.所以,应用程序在使用TCP协议之前,必 ...

  7. 【转】Android 服务器之SFTP服务器上传下载功能

    原文网址:http://blog.csdn.net/tanghua0809/article/details/47056327 本文主要是讲解Android服务器之SFTP服务器的上传下载功能,也是对之 ...

  8. JBPM4入门——8.等待节点的分支执行

    JBPM入门系列文章: JBPM4入门——1.jbpm简要介绍 JBPM4入门——2.在eclipse中安装绘制jbpm流程图的插件 JBPM4入门——3.JBPM4开发环境的搭建 JBPM4入门—— ...

  9. C#隐式运行CMD命令(隐藏命令窗口)

    原文 C#隐式运行CMD命令(隐藏命令窗口) 本文实现了C#隐式运行CMD命令的功能.下图是实例程序的主画面.在命令文本框输入DOS命令,点击"Run"按钮,在下面的文本框中输出运 ...

  10. 2016年JavaScript技术栈展望

    如果你正在筹划新的前端项目或者重构现有项目,那么你需要认识到现在的前端开发环境已经今非昔比,这其中有太多的选择了:React.Flux.Angular.Aurelia.Mocha.Jasmine.Ba ...