- 基本功能
- 分页按钮属性效果
- 使用自定义信息区
- Repeater分页
- DataList分页
- Url分页
- Url重写
- Url逆向分页
- n层结构应用
- 使用Xml文件数据源
- 图片浏览示例
- AccessDataSource分页
- SqlDataSource分页
- ObjectDataSource分页
- 自定义数据呈现逻辑
- 使用图片按钮
- 查询结果分页
- 查询结果Url分页
- 克隆属性及事件
- 页索引输入/选择框
- 自定义导航按钮
- 在用户控件中实现分页
- UpdatePanel支持
- 设置当前页按钮位置
- 使用Table布局
- 自定义提交按钮图片
- 从Url中获取每页显示记录数
- 应用CSS样式
- 使用GoToPage方法
- 分页导航元素布局
- 类:
- 属性:
- AlwaysShow
- AlwaysShowFirstLastPageNumber
- BackImageUrl
- ButtonImageAlign
- ButtonImageExtension
- ButtonImageNameExtension
- CloneFrom
- CpiButtonImageNameExtension
- CssClass
- CurrentPageButtonClass
- CurrentPageButtonPosition
- CurrentPageButtonStyle
- CurrentPageButtonTextFormatString
- CurrentPageIndex
- CustomInfoClass
- CustomInfoHTML
- CustomInfoSectionWidth
- CustomInfoStyle
- CustomInfoTextAlign
- DisabledButtonImageNameExtension
- EnableTheming
- EnableUrlRewriting
- EndRecordIndex
- FirstPageText
- FirstPageUrlRewritePattern
- HorizontalAlign
- ImagePath
- InvalidPageIndexErrorMessage
- LastPageText
- LayoutType
- MoreButtonType
- NavigationButtonsPosition
- NavigationButtonType
- NavigationToolTipTextFormatString
- NextPageText
- NumericButtonCount
- NumericButtonTextFormatString
- NumericButtonType
- PageCount
- PageIndexBoxClass
- PageIndexBoxStyle
- PageIndexBoxType
- PageIndexOutOfRangeErrorMessage
- PageSize
- PagesRemain
- PagingButtonLayoutType
- PagingButtonSpacing
- PagingButtonType
- PrevPageText
- RecordCount
- RecordsRemain
- ReverseUrlPageIndex
- ShowBoxThreshold
- ShowCustomInfoSection
- ShowDisabledButtons
- ShowFirstLast
- ShowMoreButtons
- ShowNavigationToolTip
- ShowPageIndex
- ShowPageIndexBox
- ShowPrevNext
- SkinID
- StartRecordIndex
- SubmitButtonClass
- SubmitButtonImageUrl
- SubmitButtonStyle
- SubmitButtonText
- TextAfterPageIndexBox
- TextBeforePageIndexBox
- UrlPageIndexName
- UrlPageSizeName
- UrlPaging
- UrlPagingTarget
- UrlRewritePattern
- 方法:
- 事件:
- 枚举:
- 委托:
AspNetPager 示例 - Url逆向分页
该示例演示如何使用AspNetPager分页控件进行Url逆向分页。
相关属性设置:UrlPaging="true" ReverseUrlPageIndex="true"
注:此示例中还举例说明了如何使最后一页与其它页显示相同的记录数,如共有101条数据,每页显示10条,则默认最后一页会只有一条数据,使用该示例中的方法,可以使最后一页同样显示十条记录,即部分记录与前一页重复。
ReverseUrlPageIndex.aspx:
<%@ Page Language="C#" MasterPageFile="AspNetPager.master" MetaDescription="该示例演示如何使用AspNetPager分页控件进行Url逆向分页。" AutoEventWireup="true" Inherits="ReverseUrlPageIndex_Default" Title="Url逆向分页" Codebehind="ReverseUrlPageIndex.aspx.cs" %> <asp:Content runat="server" ContentPlaceHolderID="desc"> 相关属性设置:<strong>UrlPaging="true" ReverseUrlPageIndex="true"</strong> <p><strong>注:</strong>此示例中还举例说明了如何使最后一页与其它页显示相同的记录数,如共有101条数据,每页显示10条,则默认最后一页会只有一条数据,使用该示例中的方法,可以使最后一页同样显示十条记录,即部分记录与前一页重复。</p> </asp:Content> <asp:Content ID="Content1" ContentPlaceHolderID="main" Runat="Server"> <webdiyer:aspnetpager id="AspNetPager1" runat="server" horizontalalign="Center" PagingButtonSpacing="8px" onpagechanged="AspNetPager1_PageChanged" showcustominfosection="Right" urlpaging="True" width="100%" ShowNavigationToolTip="true" UrlPageIndexName="page" ReverseUrlPageIndex="true" PageIndexBoxType="DropDownList"></webdiyer:aspnetpager> <br /><asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" Width="100%" CssClass="table table-bordered table-striped"> <Columns> <asp:BoundField DataField="orderid" HeaderText="订单编号" /> <asp:BoundField DataField="orderdate" HeaderText="订单日期" DataFormatString="{0:d}" /> <asp:BoundField DataField="companyname" HeaderText="公司名称" /> <asp:BoundField DataField="employeename" HeaderText="雇员姓名" /> </Columns> </asp:GridView> <br /> <webdiyer:AspNetPager runat="server" ID="AspNetPager2" CloneFrom="aspnetpager1"></webdiyer:AspNetPager> </asp:Content>
ReverseUrlPageIndex.aspx.cs:
using System; using System.Configuration; using System.Data; using System.Data.SqlClient; using System.Web.UI; public partial class ReverseUrlPageIndex_Default : Page { protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { //cache the number of total records to improve performance object obj = Cache[GetType()+"totalOrders"]; if (obj == null) { int totalOrders = (int) SqlHelper.ExecuteScalar(CommandType.StoredProcedure, "P_GetOrderNumber"); Cache[GetType()+"totalOrders"] = totalOrders; AspNetPager1.RecordCount = totalOrders; } else { AspNetPager1.RecordCount = (int) obj; } } } protected void AspNetPager1_PageChanged(object src, EventArgs e) { int startIndex = AspNetPager1.StartRecordIndex; //如果是最后一页,则重新设置起始记录索引,以使最后一页的记录数与其它页相同,如总记录有101条,每页显示10条,如果不使用此方法,则第十一页即最后一页只有一条记录,使用此方法可使最后一页同样有十条记录。 if (AspNetPager1.CurrentPageIndex == AspNetPager1.PageCount) startIndex = AspNetPager1.RecordCount - AspNetPager1.PageSize+1; GridView1.DataSource = SqlHelper.ExecuteReader(CommandType.StoredProcedure, ConfigurationManager.AppSettings["pagedSPName"], new SqlParameter("@startIndex", startIndex), new SqlParameter("@endIndex", AspNetPager1.EndRecordIndex)); GridView1.DataBind(); AspNetPager1.CustomInfoHTML = "Page <font color=\"red\"><b>" + AspNetPager1.CurrentPageIndex + "</b></font> of " + AspNetPager1.PageCount; AspNetPager1.CustomInfoHTML += " Orders " + AspNetPager1.StartRecordIndex + "-" + AspNetPager1.EndRecordIndex; } }