asp.net 自定义翻页,无需外部dll控件

翻页函数

 private PagedDataSource GetPageNumber(List<Comments> list, int pagesize, string gonumber)
        {
            //   数据源
            PagedDataSource Pgds = new PagedDataSource();
            //
            Pgds.DataSource = list;
            //        设置允许分页
            Pgds.AllowPaging = true;
            //        每页显示为6行
            Pgds.PageSize = pagesize;
            //        显示总共页数
            //
            lblTotalPage.Text = Pgds.PageCount.ToString();
            //        当前页
            int CurrentPage;
            //        请求页码为不为null设置当前页,否则为第一页
            if (Request.QueryString["Page"] != null)
            {

                CurrentPage = Convert.ToInt32(Request.QueryString["Page"]);
            }

            else
            {

                CurrentPage = 1;
            }
            //   当前页所引为页码-1
            Pgds.CurrentPageIndex = CurrentPage - 1;
            //   显示当前页码
            lblCurrentPage.Text = CurrentPage.ToString();
            //共多少条
            LabelCount.Text = list.Count.ToString();

            //   如果不是第一页,通过参数Page设置上一页为当前页-1,否则不显示连接
            if (!Pgds.IsFirstPage)
            {
                //            Request.CurrentExecutionFilePath为当前请求虚拟路径
                gonumber = Convert.ToString(CurrentPage - 1);
                lnkPrev.NavigateUrl = Request.CurrentExecutionFilePath + "?Page=" + gonumber;
            }
            //        End If
            //   如果不是最后一页,通过参数Page设置下一页为当前页+1,否则不显示连接
            if (!Pgds.IsLastPage)
            {
                //    Request.CurrentExecutionFilePath为当前请求虚拟路径
                gonumber = Convert.ToString(CurrentPage + 1);
                lnkNext.NavigateUrl = Request.CurrentExecutionFilePath + "?Page=" + gonumber;
            }
            return Pgds;
        }

按钮事件

        protected void ButtonNumber_Click(object sender, EventArgs e)
        {
            int i = 0;
            string gonumber = TextBoxNumber.Text.Trim();
            if (int.TryParse(gonumber, out i))
            {
                Response.Redirect(Request.CurrentExecutionFilePath + "?Page=" + gonumber);
            }

        }

  

前台代码

<div class="widget-footer">
                    当前页:<asp:Label ID="lblCurrentPage" runat="server" Text=""></asp:Label>
                    |   总页数:<asp:Label ID="lblTotalPage" runat="server" Text=""></asp:Label>
                    |  共:<asp:Label ID="LabelCount" runat="server" Text=""></asp:Label>
                    条
                  |
                <asp:HyperLink ID="lnkPrev" runat="server">上一页</asp:HyperLink>
                    |
                    <asp:HyperLink ID="lnkNext" runat="server">下一页</asp:HyperLink>
                    |
                    <asp:TextBox ID="TextBoxNumber" runat="server" MaxLength="2" Width="20px"></asp:TextBox>
                    <asp:Button class="btn" ID="ButtonNumber" runat="server" Text="Go" OnClick="ButtonNumber_Click" />
                </div>

  

时间: 2024-12-16 18:36:19

asp.net 自定义翻页,无需外部dll控件的相关文章

ASP.NET自定义Web服务器控件-DropDownList/Select下拉列表控件

using System; using System.Collections.Generic; using System.ComponentModel; using System.Linq; using System.Text; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; //自定义web服务器控件-下拉列表 namespace MyControls { [DefaultProperty("Tex

asp.net GridView 表格之分页显示与翻页功能及自定义翻页页码样式

一.实现分页功能  GridView实现分页只需要在属性框中将AllowPaging(是否在GridView中打开分页功能)设置为true即可 有时打开分页后不显示页码 确保AllowCustomPaging(是否打开对自定义分页的支持)为False即可 二.实现翻页功能  如何点击页码实现翻页呢? 在属性框中事件选择设置PageIndexChanging(在Grid View的当前索引页正在更改事触发)这一事件 后台代码如下 /// <summary> /// 翻页操作 /// 在GridV

UIScrollView pagingEnabled自定义翻页宽度

PagingEnabled只能翻过整页,下面几个简单的设置即可实现 技术点: 1. 创建一个继承UIView的视图,并设置clipsToBounds= YES 2. 添加一个UIscrollView控件,将其宽度设置为自定义翻页的宽度 3. 设置UIScrollview 的clipsToBounds= NO 4. 确保本View的宽度大于UIScrollView的宽度用于显示预览内容 5. 重写本View的hittest方法,为了确保用户滑动UIscrollview以外的空间时也可以触发UIsc

集成自动化的条形码功能到internet应用程序,网站或自定义Java应用程序的条码控件Java Barcode Package

Java Barcode Package控件是一款条码生成控件,包含所有的JavaBean,Applets,Servlets和类库可以使用于装有Java虚拟机的任何平台,包括Windows?, Linux, MacOS, Unix, Solaris, HP/UX, AS/400 和OS/390,用于集成自动化的条形码功能到internet应用程序,网站或自定义Java应用程序. 具体功能: 可在任何装有Java虚拟机的操作系统上生成条形码. 此产品的开发者授权是永久的且免收版权费用的. 支持ID

ASP.NET MVC中加载WebForms用户控件(.ascx)

原文:ASP.NET MVC中加载WebForms用户控件(.ascx) 问题背景 博客园博客中的日历用的是ASP.NET WebForms的日历控件(System.Web.UI.WebControls.Calendar),它会为“上一月”.“下一月”的链接生成"__doPostBack()"的js调用,如下图: 目前发现它会带来两个问题: 1. 不支持IE10: 2. 某些电脑不允许执行__doPostBack. 问题提炼 前提: 我们想以最低的成本解决这个问题,也就是对当前代码尽可

ASP.NET编辑与更新数据(非GridView控件实现)

Insus.NET在实现<ASP.NET开发,从二层至三层,至面向对象 (5)>http://www.cnblogs.com/insus/p/3880606.html 中,没有把数据编辑与更新功能一起演示,留下给网友们自由发挥,但是还是有网友想看看Insus.NET用实现方法. 以前Insus.NET的做法,是在GridView控件中进行.如这篇视频教程<GridView Edit Update Cancel Delete>http://www.cnblogs.com/insus/

念念不忘,ASP.NET MVC显示WebForm网页或UserControl控件

学习与使用ASP.NET MVC这样久,还是对asp.net念念不忘.能否在asp.net mvc去显示aspx或是user control呢?这个灵感(算不上灵感,只能算是想法)是来自前些天有写过一篇<多个视图结果显示于一个共用预览视图内>http://www.cnblogs.com/insus/p/3633298.html 其中有一个Render方法.以致想起以前开发asp.net时,也经常Render用户控件.即是说把网页经过Render之后,转换为是一串字符串. 那我们也一定可以把这串

FineReport——JS二次开发(自定义翻页按钮)

FR允许自定义工具栏上面的按钮,并提交JS方法: 对于翻页功能,大概有首页,下一页,上一页,最后一页,以及跳转页等功能. 不得不说的是,在HTML页面自定义的按钮如何获取到报表模板,通过FR提供的JS方法,可以获取到这个模板(reportFrame为html标签iframe的id名称): document.getElementById('reportFrame').contentWindow.contentPane.方法名称(); 首页: document.getElementById('rep

asp.net页如何获取母版页控件

获取母版页的相关内容有两种方法 1 通过findcontrol找控件ID需要在此事件中~因为Page_load中时是先内容页加载然后才是母版页加载 protected void Page_LoadComplete(object sender, EventArgs e) { Label2.Text = "现在时间是" + (Master.FindControl("Label1") as Label).Text; if (Request.QueryString[&quo