使用DataList 分页方法
什么是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} {0} {4} , {3} {1} {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 分页方法的更多相关文章
- DataList分页访问FooterTemplate模板里的控件
今天做DataList分页的时候,突然想把分页控件写在FooterTemplate模板里面,弄了很久都访问不到控件,终于发现问题所在,以下是访问FooterTemplate里控件的方法: <Fo ...
- Oracle、SQL Server、MySQL分页方法
测试用例:查询TEST_TABLE表中TEST_COLUMN列的第10-20条数据 1,Oracle分页方法 SELECT A.* FROM ( SELECT ROWNUM ROWNO, B.* FR ...
- Sql Server 2012 的新分页方法分析(offset and fetch) - 转载
最近在分析 Sql Server 2012 中 offset and fetch 的新特性,发现 offset and fetch 无论语法的简洁还是功能的强大,都是相当相当不错的 其中 offset ...
- phalcon几种分页方法
phalcon几种分页方法 一: use Phalcon\Paginator\Adapter\Model as PaginatorModel; // Current page to show // I ...
- 只是一个用EF写的一个简单的分页方法而已
只是一个用EF写的一个简单的分页方法而已 慢慢的写吧.比如,第一步,先把所有数据查询出来吧. //第一步. public IQueryable<UserInfo> LoadPagesFor ...
- SharePoint2013 SharePoint-Hosted 模式 分页方法
/**分页js插件 var ListPager = new listPaging(); 先调用start方法加载上下文 然后调用dataLoad方法查询第一页数据 需要设置几个属性值 ListPage ...
- C#针对DataTable进行分页方法
以下的分页方法是针对数据量不是非常大的数据进行的,是在内存中进行的分页操作. /// <summary> /// DataTable分页 /// </summary> /// ...
- SQL SERVER 分页方法
最近项目中需要在SQL SERVER中进行分页,需要编写分页查询语句.之前也写过一些关于分页查询的语句,但是性能不敢恭维.于是在业务时间,在微软社区Bing了一篇老外写的关于SQL SERVER分页的 ...
- sql server两种分页方法
方法一: --分页方法一 OrderID,CustomerID, EmployeeID,OrderDate,ShippedDate,ShipName,ShipAddress,Freight from ...
随机推荐
- 【Android 复习】:第02期:引导界面(二)使用ViewPager实现欢迎引导页面
一.实现的效果图 也许是养成了这样一个习惯,每次看别人的代码前,必须要先看实现的效果图达到了一个什么样的效果,是不是跟自己想要实现的效果类似,有图才有真相嘛,呵呵. 二.编码前的准 ...
- JDBC初步 JDBC连接SQLServer 2008之心路历程
转自:http://www.cnblogs.com/weilengdeyu/archive/2013/01/17/2864321.html JDBC简介 今天,研究了下JDBC连接SQL Server ...
- dev中gridview控件 z
目录:一.客户端常用1.常用API2.聚焦行变更事件3.客户端选择多行4.客户端选择行5. 获取选择的行数目6.单击行时,选中行7.通过checkbox 选择行8.选择所有行9.启动编辑框,Conta ...
- 切换Oracle数据库实例
如果多个实例,需要切换可以采用以下命令: export ORACLE_SID=SID
- ajax向后台传值
function save_person(){ //保存个人信息编辑 var data = getFormJson(".row"); //获取表单数据 $.post(clerk_u ...
- ubuntu相关软件合集(持续更新中)
本人使用的是Ubuntu-Kylin14.04,自带了日历.输入法.优客助手等易于上手的应用.省的每次安装完原生的系统再麻烦的安装,下面介绍默认应用外的相关常用软件: 一.Keylock Applic ...
- OpenCL memory object 之 传输优化
转载自:http://www.cnblogs.com/mikewolf2002/archive/2011/12/18/2291741.html 首先我们了解一些优化时候的术语及其定义: 1.defer ...
- Compress、tar、gzip、zcat、bzip2、bzcat、打包解压命令行
讲解内容: Linux环境中,压缩文件案的扩展名大多是*.tar,*.tar.gz,*.tgz,*.gz,*.Z,*.bz2. *.z compress程序亚索的文件: *.g ...
- /etc/init.d/syslog: No such file or directory
centos 6 使用的是 rsyslog 而 centos5 使用 syslog ,兩個不同版本使用軟體不同.因此,你得要修訂 /etc/rsyslog.conf 才行!軟體也變成 /etc/ini ...
- [学习笔记]设计模式之Factory Method
写在前面 为方便读者,本文已添加至索引: 设计模式 魔法手札索引 在上篇笔记Abstract Factory设计模式中,时の魔导士创建了一系列的FoodFactory,并教会了其中一名霍比特人theC ...