什么是DataList我想应该不需要解释了,接下来分享本人在项目里使用到的通过DataList进行分页展示方法。

首先在ASPX页面添加一个DataList(后面都简称DL)控件,示例代码如下:

  <asp:DataList ID="DL_BadReason" runat="server" Width="100%"
////////////////////中间嵌套你需要展示出来的数据和方法的ID////////
</asp:DataList>

此例中展示的风格是通过下拉列表来进行分页跳转(当然,这样做是无法和高大上的Ajax来进行分页来的给力,后面有时间虾哥将会再写一个AJAX分页DEMO分享给码友们)

在前台页面再添加一个DropList控件来绑定页数,以便进行分页跳转,示例代码如下:

  <asp:DropDownList ID="YourName" runat="server" AutoPostBack="true" OnSelectedIndexChanged="YourName">
</asp:DropDownList>

前台搞定!接下来就是后台代码实现了,代码逻辑很简单,这里就不多注释太多了。示例代码如下:

         if (dtBadReason.Rows.Count > ) //这里的dtBadReason是你从数据库查询出来的数据源
{
try
{
//DL:DataList this.DL.DataSource = dvBadReason;
DL.DataBind();
DL.HorizontalAlign = HorizontalAlign.Center; //使用PageDataSource
PagedDataSource PgB = new PagedDataSource();
PgB.DataSource = dvBadReason;
//设定条数
PgB.PageSize = ;
PgB.AllowPaging = true; //分页设定
int CurrentPage = Get_CurrentPage();
PgB.CurrentPageIndex = CurrentPage - ;
lbPage.Text = String.Format("{2}&nbsp;{0}&nbsp;{4}&nbsp;,&nbsp;{3}&nbsp;{1}&nbsp;{4}"
, CurrentPage.ToString()
, PgB.PageCount.ToString()
, "第"
, "共"
, "页"); DL_BadReason.DataSource = PgB;
DL_BadReason.DataBind(); ddlPage.Items.Clear();
ddlPage.Items.Add("请跳页");
ListItem oItm = new ListItem();
for (int i = ; i < PgB.PageCount; i++)
{
int iPage = i + ;
oItm.Text = String.Format("{1}{0}{2}", iPage.ToString(), "第", "页");
oItm.Value = iPage.ToString();
ddlPage.Items.Add(new ListItem(oItm.Text.Trim(), oItm.Value));
} }
catch (Exception ex)
{
Response.Write("<b>Error Message-- </b>" + ex.Message.ToString());
}
}

虽然这种分页方法远没有我们自己手写个存储过程再结合AJAX来进行分页爽,而且性能不高,用户体验效果也不理想。但这恰恰却适用于一些只需要用来展示数据的项目。当然,这比Repter好多了!

最终分页效果如下:

使用DataList 分页方法的更多相关文章

  1. DataList分页访问FooterTemplate模板里的控件

    今天做DataList分页的时候,突然想把分页控件写在FooterTemplate模板里面,弄了很久都访问不到控件,终于发现问题所在,以下是访问FooterTemplate里控件的方法: <Fo ...

  2. Oracle、SQL Server、MySQL分页方法

    测试用例:查询TEST_TABLE表中TEST_COLUMN列的第10-20条数据 1,Oracle分页方法 SELECT A.* FROM ( SELECT ROWNUM ROWNO, B.* FR ...

  3. Sql Server 2012 的新分页方法分析(offset and fetch) - 转载

    最近在分析 Sql Server 2012 中 offset and fetch 的新特性,发现 offset and fetch 无论语法的简洁还是功能的强大,都是相当相当不错的 其中 offset ...

  4. phalcon几种分页方法

    phalcon几种分页方法 一: use Phalcon\Paginator\Adapter\Model as PaginatorModel; // Current page to show // I ...

  5. 只是一个用EF写的一个简单的分页方法而已

    只是一个用EF写的一个简单的分页方法而已 慢慢的写吧.比如,第一步,先把所有数据查询出来吧. //第一步. public IQueryable<UserInfo> LoadPagesFor ...

  6. SharePoint2013 SharePoint-Hosted 模式 分页方法

    /**分页js插件 var ListPager = new listPaging(); 先调用start方法加载上下文 然后调用dataLoad方法查询第一页数据 需要设置几个属性值 ListPage ...

  7. C#针对DataTable进行分页方法

    以下的分页方法是针对数据量不是非常大的数据进行的,是在内存中进行的分页操作. /// <summary> /// DataTable分页 /// </summary> /// ...

  8. SQL SERVER 分页方法

    最近项目中需要在SQL SERVER中进行分页,需要编写分页查询语句.之前也写过一些关于分页查询的语句,但是性能不敢恭维.于是在业务时间,在微软社区Bing了一篇老外写的关于SQL SERVER分页的 ...

  9. sql server两种分页方法

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

随机推荐

  1. 在Azure中使用Load Runner测试TCP最大并发连接数

    对于Azure中的每一台虚机,它所能支持的TCP最大并发连接数是50万(参考微软官网: http://azure.microsoft.com/en-us/documentation/articles/ ...

  2. 非常有用的Java程序片段

    1.向文件末尾添加内容 BufferedWriter out = null; try { out = new BufferedWriter(new FileWriter(”filename”, tru ...

  3. 【转】Xcode7.1环境下上架iOS App到AppStore 流程 -- 不错!!

    原文网址:http://www.jianshu.com/p/a8bd16be122f 1.官网地址 Apple Developer 地址:https://developer.apple.com/mem ...

  4. [C# 网络编程系列]专题五:TCP编程

    转自:http://www.cnblogs.com/zhili/archive/2012/08/25/2656840.html 前言 前面专题的例子都是基于应用层上的HTTP协议的介绍, 现在本专题来 ...

  5. <转>如何将Chrome变成开发利器,开发者们在用这些插件

    Chrome 浏览器具有强大的跨平台能力以及丰富的扩展插件,一直是许多开发者的首要选择.而利用许多 Chrome 插件,开发者们在开发流程中能够极大地提高开发效率.我们就整理了十款开发者常用的 Chr ...

  6. POJ 3107

    #include<iostream> #include<cstdio> #include<cstring> #include<string> #incl ...

  7. HDU-1395 2^x mod n = 1

    http://acm.hdu.edu.cn/showproblem.php?pid=1395 怎样取余是关键.. 2^x mod n = 1 Time Limit: 2000/1000 MS (Jav ...

  8. poj 2451 Uyuw's Concert(半平面交)

    Uyuw's Concert Time Limit: 6000MS   Memory Limit: 65536K Total Submissions: 8580   Accepted: 3227 De ...

  9. Spock Proxy

    Spock Proxy undefined 服务网关_百度搜索 undefined 8月2日,深圳 | DockOne技术沙龙开始报名啦 - DockOne.io undefined 知道创宇爬虫题- ...

  10. 高级IO复用应用:聊天室程序

    简单的聊天室程序:客户端从标准输入输入数据后发送给服务端,服务端将用户发送来的数据转发给其它用户.这里采用IO复用poll技术.客户端采用了splice零拷贝.服务端采用了空间换时间(分配超大的用户数 ...