当前位置: 移动技术网 > IT编程>开发语言>.net > AspNetPager控件的最基本用法示例介绍

AspNetPager控件的最基本用法示例介绍

2017年12月12日  | 移动技术网IT编程  | 我要评论
aspnetpager控件是一个基于.net的第三方免费开源控件,具有开发高效、使用方便、功能完整等优点。它弥补了gridview内置分页以及pagedatasource类

aspnetpager控件是一个基于.net的第三方免费开源控件,具有开发高效、使用方便、功能完整等优点。它弥补了gridview内置分页以及pagedatasource类辅助分页的不足,将分页数据逻辑和页面ui分离开来,非常有利于sql分页的实现。下面仅举一个最基本的用法,帮助初学者入门。

到aspnetpage官方网站相应页面下载控件:点击打开链接

下载后解压缩,里面有一个aspnetpager.dll文件,它就是我们要使用的控件。另外还有一个aspnetpager.xml文件,它是对应的文档,主要有两个作用:一是供开发人员使用控件时在代码智能提示里嵌入使用说明,二是供自动生成文档工具生成文档。我们把这两个文件一并放到网站的bin文件下,然后在visual studio 2008 express的工具箱内添加该控件。接着往页面中拖一个gridview和一个aspnetpager控件。

为aspnetpager控件设置相应属性和事件,实现分页功能,这是该控件最重要最基本的用法。代码如下:

default.aspx文件相关代码:

<asp:gridview id="gridview1" runat="server"> 
</asp:gridview> 
<webdiyer:aspnetpager id="aspnetpager1" runat="server" pagesize="20" 
onpagechanging="aspnetpager1_pagechanging"> 
</webdiyer:aspnetpager>

default.aspx.cs文件相关代码:

protected void page_load(object sender, eventargs e) 
{ 
if (!ispostback) 
displaydata(1, aspnetpager1.pagesize); 
} 

private void displaydata(int pageindex, int pagesize) 
{ 
sqlitedata md = new sqlitedata(); 
aspnetpager1.recordcount = md.executescalar<int>("select count(*) from city"); 
datatable dt = md.filldatatable(string.format("select * from city limit {0},{1}", (pageindex - 1) * pagesize, pagesize)); 
md.close(); 
gridview1.datasource = dt; 
gridview1.databind(); 
} 

protected void aspnetpager1_pagechanging(object src, pagechangingeventargs e) 
{ 
displaydata(e.newpageindex, aspnetpager1.pagesize); 
}

首先在aspx文件里设置pagesize属性,指出每页的大小为20条记录。然后在后台给出总记录数recordcount、当前页码e.newpageindex。其中displaydata方法编写的好坏很重要,这里显然实现的比较简练。当第一次访问页面时,显示第1页、每页20条记录;以后选择其他页时,显示第e.newpageindex页、每页20条记录。本示例使用的是sqlite数据库,支持limit关键词,所以分页逻辑比较简单。需要说明的是,这里用到了自己编写的数据库操作类sqlitedata类,读者可以改写成用原生ado.net操作,难度不大。

最后显示效果:

aspnetpager控件功能比较强大,这里只不过介绍了最基本用法,以后有机会会介绍其他功能。

如您对本文有疑问或者有任何想说的,请点击进行留言回复,万千网友为您解惑!

相关文章:

验证码:
移动技术网