用AspNetPager.dll进行分页

1.表示层,引用->添加引用->浏览->/bin/AspNetPager.dll确定

2.default.aspx
<%@ Register Assembly="AspNetPager" Namespace="Wuqi.Webdiyer" TagPrefix="webdiyer" %>

<asp:Repeater id="myRepeater" runat="server"><ItemTemplate>
<tr><td><%#Eval("id")%></td><td><%#Eval("GuestName")%></td><td><%#Eval("GuestEmail")%></td><td><%#Eval("content")%></td></tr>
</ItemTemplate></asp:Repeater>

<webdiyer:AspNetPager ID="AspNetPager1" runat="server" Width="100%" NumericButtonCount="6" UrlPaging="true" NumericButtonTextFormatString="[{0}]" CustomInfoHTML="第 <font color='red'><b>%CurrentPageIndex%</b></font> 页 共 %PageCount% 页 显示 %StartRecordIndex%-%EndRecordIndex% 条" ShowCustomInfoSection="left"
FirstPageText="首页" LastPageText="末页" NextPageText="下页" PrevPageText="上页" Font-Names="Arial" BackColor="#EDEDED" AlwaysShow="true"   SubmitButtonText="跳转" SubmitButtonStyle="botton" OnPageChanging="AspNetPager1_PageChanging1" HorizontalAlign="Right" ></webdiyer:AspNetPager>

3.default.aspx.cs

    public partial class Default : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack){
                bind();
            }
        }

        private void bind()
        {   /把记录总数赋值给分页控件
            string sql = "select [id],[GuestName],[GuestEmail],[Content],[Time],[Reply] from [Tmessage] order by id desc";
            DataSet ds = ACCHelper.ExecuteDataset(ACCHelper.ConnectionStringLocalTransaction, CommandType.Text, sql, null);
            AspNetPager1.RecordCount = ds.Tables[0].Rows.Count;
            int pageSize = AspNetPager1.PageSize = 6;
            int pageIndex =AspNetPager1.CurrentPageIndex - 1;
            绑定当前页的数据到Repeater控件
            DataSet dd = GVBind(sql,pageIndex,pageSize);
            myRepeater.DataSource = dd;
            myRepeater.DataBind();
        }
        //PageChanged事件处理
        protected void AspNetPager1_PageChanging1(object src, Wuqi.Webdiyer.PageChangingEventArgs e)
        { AspNetPager1.CurrentPageIndex = e.NewPageIndex; bind(); }

        //返回当前页dataset
        public static DataSet GVBind(string sqlstring, int page_index, int page_size)
        {
            int firstPage = page_index * page_size;
            OleDbConnection myCon = new OleDbConnection(ACCHelper.ConnectionStringLocalTransaction);
            DataSet ds = new DataSet();
            OleDbDataAdapter myConAdp = new OleDbDataAdapter(sqlstring, myCon);
            myConAdp.Fill(ds, firstPage, page_size, "article");
            myCon.Close();
            return ds;
        }
    }

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
首页 更新历史 在线演示 下载 帮助文档 常见问题 代码工具 分页资源 客户站点 留言簿 .Net资源 登录 注册 AspNetPager分页控件 分页是Web应用程序中最常用到的功能之一,在ASP.NET中,虽然自带了一个可以分页的DataGrid(asp.net 1.1)和GridView(asp.net 2.0)控件,但其分页功能并不尽如人意,如可定制性差、无法通过Url实现分页功能等,而且有时候我们需要对DataList和Repeater甚至自定义数据绑定控件进行分页,手工编写分页代码不但技术难度大、任务繁琐而且代码重用率极低,因此分页已成为许多ASP.NET程序员最头疼的问题之一。 AspNetPager针对ASP.NET分页控件的不足,提出了与众不同的解决asp.net中分页问题的方案,即将分页导航功能与数据显示功能完全独立开来,由用户自己控制数据的获取及显示方式,因此可以被灵活地应用于任何需要实现分页导航功能的地方,如为GridView、DataList以及Repeater等数据绑定控件实现分页、呈现自定义的分页数据以及制作图片浏览程序等,因为AspNetPager控件和数据是独立的,因此要分页的数据可以来自任何数据源,如SQL Server、Oracle、Access、mysql、DB2等数据库以及XML文件、内存数据或缓存中的数据、文件系统等等。 AspNetPager 7.1 版发布(2008-7-20) 新增 LayoutType 属性,该值是 LayoutType 枚举Table或Div,默认值是Div,即使用div布局,若设为Table则使用表格布局方式; 新增 UrlPageSizeName 属性,可以通过在url参数中指定PageSize属性的值,该UrlPageSizeName属性值若为空或负数忽略,否则PageSize属性将返回从Url中获取的UrlPageSizeName 参数的值; 新增SubmitButtonImageUrl属性,支持使用图片按钮,当该属性的值不为空时,分页控件使用该属性的值做为图片按钮路径,如果该值为空或默认值则时使用普通按钮; 修正了设计时支持中设置页索引文本或下拉框选项时,在页索引文本或下拉框显示方式中选择“自动”时属性被设置为Always而非Auto的错误; 解决了设计时EnableUrlRewriting 为true 时 UrlRewritePattern属性出错的出错问题; 代码精简及其它优化; 上一版本中标记为已废弃的如下属性:ShowInputBox、InputBoxClass、InputBoxStyle、TextBeforeInputBox、TextAfterInputBox 已去掉,新版本中已不存在这些属性,升级时请注意; AspNetPager 7.0.2 版发布(2008-1-26) 所有属性除CloneFrom外都支持使用皮肤Scheme主题(7.0.1版中大部分都不支持)。 修正了在居中当前页索引按钮的情况下(CenterCurrentPageButton=true),总页数小于数字页索引按钮数(即:PageCount小于NumericButtonCount的值)时出现负页数的bug。 新增属性CurrentPageButtonTextFormatString,可以获取或设置当前页数字页索引文本的显示格式,感谢网友asuka08的建议! 新增属性UrlPagingTarget,可以获取或设置Url分页方式下分页按钮或超链接指向的目标窗口或框架的名称。 当使用下拉框显示页索引时(即PageIndexBoxType=DropDownList时),如果总页数超过80页,将在下拉框中只列出部分页索引而不是全部页索引,以防页数太多导致下拉框选项太多而拖慢页面下载和打开速度。页索引下拉框的页索引选取规则是:当前页小于或等于15页时,显示前15页及最后5页;当前页索引大于总页数-14页时,显示前5页和最后15页;否则显示前5页、从当前页索引前5页到后5页的十一页以及最后5页。如果您有更好的下拉框页索引选取规则,请留言或发邮件联系我,我会及时更新。谢谢!

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值