[Asp.net]AspNetPager分页组件
引言
在基于Asp.net的内网系统中,分页功能是最常用的,用的最多的组件就是AspNetPager。
AspNetPager
官网:http://www.webdiyer.com/aspnetpager/
官网也提供了存储过程的生成工具,这里还是自己动手写吧,顺便在学习一下存储过程的语法:
1 CREATE PROC Paged 2 @pageIndex INT, 3 @pageCount INT OUTPUT, 4 @pageSize INT 5 AS 6 DECLARE @count INT 7 SELECT @count= COUNT(*) FROM dbo.Student 8 SET @pageCount=CEILING(@count*1.0/@pageSize) 9 SELECT 10 * 11 FROM 12 (SELECT ROW_NUMBER() OVER(ORDER BY dbo.Student.stuId) AS tempId,* FROM dbo.Student) AS stu 13 WHERE tempId >=@pageSize*(@pageIndex-1)+1 AND tempId <=@pageIndex*@pageSize
在页面中引入组件:
<%@ Register Assembly="AspNetPager" Namespace="Wuqi.Webdiyer" TagPrefix="webdiyer" %>
分页样式一: 首页 上一页 下一页 尾页
1 <webdiyer:AspNetPager ID="AspNetPager1" runat="server" 2 CustomInfoHTML="共%PageCount%页,当前为第%CurrentPageIndex%页,每页%PageSize%条,共%RecordCount%条" 3 FirstPageText="首页" 4 LastPageText="尾页" 5 NextPageText="下一页" 6 PageIndexBoxType="TextBox" 7 PrevPageText="上一页" 8 ShowCustomInfoSection="Left" 9 ShowPageIndex="False" 10 ShowPageIndexBox="Always" 11 SubmitButtonText="Go" 12 SubmitButtonClass="right_d_btn" 13 TextAfterPageIndexBox="页" 14 TextBeforePageIndexBox="转到" 15 OnPageChanging="AspNetPager1_PageChanging" 16 AlwaysShow="True" 17 PageSize="10" 18 ShowMoreButtons="false" 19 HorizontalAlign="Center"> 20 </webdiyer:AspNetPager>
属性介绍:http://www.webdiyer.com/aspnetpagerdocs/
后台代码:

1 using System; 2 using System.Collections.Generic; 3 using System.Linq; 4 using System.Web; 5 using System.Web.UI; 6 using System.Web.UI.WebControls; 7 8 namespace Wolfy.AspNetPagerDemo 9 { 10 public partial class Default : System.Web.UI.Page 11 { 12 protected void Page_Load(object sender, EventArgs e) 13 { 14 InitGridView(); 15 } 16 17 protected void AspNetPager1_PageChanging(object src, Wuqi.Webdiyer.PageChangingEventArgs e) 18 { 19 this.AspNetPager1.CurrentPageIndex = e.NewPageIndex; 20 InitGridView(); 21 } 22 private void InitGridView() 23 { 24 int count; 25 int pageCount; 26 gridStudent.DataSource = new BLL.StudentBLL().GetStudents(this.AspNetPager1.CurrentPageIndex, AspNetPager1.PageSize, out pageCount, out count); 27 gridStudent.DataBind(); 28 //赋值分页控件的总数 29 AspNetPager1.RecordCount = count; 30 } 31 } 32 }
效果:
效果二:页面导航 默认方式
1 <form id="form1" runat="server"> 2 <asp:gridview runat="server" ID="gridStudent"></asp:gridview> 3 <div> 4 <%-- 分页样式二 默认方式 1 2 3 4 5 6 7...--%> 5 6 <webdiyer:AspNetPager ID="AspNetPager1" runat="server" PageSize="5" 7 OnPageChanging="AspNetPager1_PageChanging"> 8 </webdiyer:AspNetPager> 9 </div> 10 </form>
效果:
总结
弄了两个较常用的样式,东西比较基础。纯粹娱乐。
代码下载:链接:http://pan.baidu.com/s/1o6I2bpw 密码:7ije
-
博客地址:http://www.cnblogs.com/wolf-sun/
博客版权:如果文中有不妥或者错误的地方还望高手的你指出,以免误人子弟。如果觉得本文对你有所帮助不如【推荐】一下!如果你有更好的建议,不如留言一起讨论,共同进步! 再次感谢您耐心的读完本篇文章。
标签:
AspNetPage
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义