- 基本功能
- 分页按钮属性效果
- 使用自定义信息区
- 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 示例 - 动态查询示例
该示例演示如何使用AspNetPager分页控件对动态查询的结果进行Url分页。
UrlSearch.aspx:
<%@ Page Language="C#" MasterPageFile="AspNetPager.master" AutoEventWireup="true" MetaDescription="该示例演示如何使用AspNetPager分页控件对动态查询的结果进行Url分页。" Inherits="UrlSearch_Default" Title="动态查询示例" Codebehind="UrlSearch.aspx.cs" %> <asp:Content ID="Content1" ContentPlaceHolderID="main" Runat="Server"> <div>订单编号 >= <asp:TextBox ID="tb_orderid" runat="server" Width="90px"></asp:TextBox> <asp:Button ID="btn_search" runat="server" OnClick="btn_search_Click" Text="查询" /> <asp:Button ID="btn_all" runat="server" OnClick="btn_all_Click" Text="显示所有" Enabled="false"/> <asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server" ControlToValidate="tb_orderid" Display="Dynamic" ErrorMessage="RequiredFieldValidator">必需</asp:RequiredFieldValidator> <asp:CompareValidator ID="CompareValidator1" runat="server" ControlToValidate="tb_orderid" Display="Dynamic" ErrorMessage="CompareValidator" Operator="DataTypeCheck" SetFocusOnError="True" Type="Integer">必须是整数</asp:CompareValidator> <asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:SqlConnection %>"> </asp:SqlDataSource> </div> <asp:Repeater ID="Repeater1" runat="server" > <HeaderTemplate> <table width="100%" class="table table-bordered table-striped"> <tr><th style="width:15%">订单编号</th><th style="width:15%">订单日期</th><th style="width:30%">公司名称</th><th style="width:20%">客户编号</th><th style="width:20%">雇员姓名</th></tr> </HeaderTemplate> <ItemTemplate> <tr> <td><%#DataBinder.Eval(Container.DataItem,"orderid")%></td> <td><%#DataBinder.Eval(Container.DataItem,"orderdate","{0:d}")%></td> <td><%#DataBinder.Eval(Container.DataItem, "companyname")%></td> <td><%#DataBinder.Eval(Container.DataItem,"customerid")%></td> <td><%#DataBinder.Eval(Container.DataItem,"employeename")%></td> </tr> </ItemTemplate> <FooterTemplate> </table> </FooterTemplate> </asp:Repeater> <webdiyer:aspnetpager id="AspNetPager1" runat="server" PageSize="12" AlwaysShow="True" ShowCustomInfoSection="Left" ShowDisabledButtons="false" ShowPageIndexBox="always" PageIndexBoxType="DropDownList" CustomInfoHTML="Page:<font color='red'><b>%currentPageIndex%</b></font>/%PageCount% %PageSize%/Page Order:%StartRecordIndex%-%EndRecordIndex% of %RecordCount%" UrlPaging="true" OnPageChanged="AspNetPager1_PageChanged"></webdiyer:aspnetpager> </asp:Content>
UrlSearch.aspx.cs:
using System; using System.Data; using System.Web.UI; using System.Web.UI.WebControls; public partial class UrlSearch_Default : Page { private int minId=0; protected void Page_Load(object sender, EventArgs e) { string cmd = "select count(*) from orders"; if (int.TryParse(Request.QueryString["minid"], out minId) && minId > 0) { cmd = "select count(*) from orders where orderid>=" + minId; btn_all.Enabled = true; } else btn_all.Enabled = false; AspNetPager1.RecordCount = (int) SqlHelper.ExecuteScalar(CommandType.Text, cmd); } protected void btn_search_Click(object sender, EventArgs e) { Response.Redirect("default.aspx?minid="+tb_orderid.Text); } protected void btn_all_Click(object sender, EventArgs e) { Response.Redirect("default.aspx"); } protected void AspNetPager1_PageChanged(object sender, EventArgs e) { string cmd = "select O.orderid,O.orderdate,O.customerid,C.CompanyName,E.FirstName+' '+E.LastName as EmployeeName from orders O left outer join Customers C on O.CustomerID=C.CustomerID left outer join Employees E on O.EmployeeID=E.EmployeeID order by orderid desc"; if (minId > 0) { cmd = "select O.orderid,O.orderdate,O.customerid,C.CompanyName,E.FirstName+' '+E.LastName as EmployeeName from orders O left outer join Customers C on O.CustomerID=C.CustomerID left outer join Employees E on O.EmployeeID=E.EmployeeID where O.orderid>=" + minId + " order by orderid desc"; tb_orderid.Text = minId.ToString(); } SqlDataSource1.SelectCommand = cmd; DataView dv = (DataView) SqlDataSource1.Select(DataSourceSelectArguments.Empty); AspNetPager1.RecordCount = dv.Count; PagedDataSource pds = new PagedDataSource(); pds.DataSource = dv; pds.AllowPaging = true; pds.CurrentPageIndex = AspNetPager1.CurrentPageIndex - 1; pds.PageSize = AspNetPager1.PageSize; Repeater1.DataSource = pds; Repeater1.DataBind(); } }