`
无恨星晨
  • 浏览: 31906 次
  • 性别: Icon_minigender_1
  • 来自: 石家庄
文章分类
社区版块
存档分类
最新评论

在 Gridview 分页上添加“上一页,下一页,共X页”等信息

 
阅读更多
原理比较简单,


就是利用GridView 在RowCreated事件上做个手脚,


当if (e.Row.RowType == DataControlRowType.Pager) 时


加入几个Button 和Label 之后再给他们写个事件就ok了


当然我觉得最有意思的就是最后的pager里面的对象嵌套。。。


拉出来一句


e.Row.Controls[0].Controls[0].Controls[0].Controls[0].Controls.AddAt(0, (Button_IndexFirst));


其中各个对象的含义,这里只做个参考给大家

Pannel对象->Table对象->TableRow对象->TableCell对象    恩 貌似是这样的。


雕虫小技,以博众高手一笑


以下是代码


//注意:GridView 必须开启分页功能,并启用RowCreated 事件


C#

protected void GridView1_RowCreated(object sender, GridViewRowEventArgs e)
{
    #region 翻页绑定
    if (e.Row.RowType == DataControlRowType.Pager)
     {
         Label label_Index = new Label();
         LinkButton Button_IndexFirst = new LinkButton();
         LinkButton Button_IndexLast = new LinkButton();
         LinkButton Button_IndexNext = new LinkButton();
         LinkButton Button_IndexPrevious = new LinkButton();

         Button_IndexFirst.Text = "第一页 ";
         Button_IndexFirst.CommandName = "first";
         Button_IndexFirst.ForeColor = Color.White;
         Button_IndexFirst.Click +=new EventHandler(PageButtonClick);

         Button_IndexNext.Text = "   下一页 ";
         Button_IndexNext.CommandName = "next";
         Button_IndexNext.ForeColor = Color.White;
           
         Button_IndexNext.Click += new EventHandler(PageButtonClick);

         Button_IndexPrevious.Text = "前一页 ";
         Button_IndexPrevious.CommandName = "previous";
         Button_IndexPrevious.ForeColor = Color.White;
         Button_IndexPrevious.Click += new EventHandler(PageButtonClick);

         Button_IndexLast.Text = "最末页 ";
         Button_IndexLast.CommandName = "last";
         Button_IndexLast.ForeColor = Color.White;
         Button_IndexLast.Click += new EventHandler(PageButtonClick);
           
         label_Index.Text ="当前为第" + (GridView1.PageIndex + 1) + "页,共有"+((GridView)sender).PageCount+"页";
         e.Row.Controls[0].Controls[0].Controls[0].Controls[0].Controls.AddAt(0, (Button_IndexFirst));
         e.Row.Controls[0].Controls[0].Controls[0].Controls[0].Controls.AddAt(1, (Button_IndexPrevious));

        int controlTmp = e.Row.Controls[0].Controls[0].Controls[0].Controls.Count-1;
         e.Row.Controls[0].Controls[0].Controls[0].Controls[controlTmp].Controls.Add(Button_IndexNext);
         e.Row.Controls[0].Controls[0].Controls[0].Controls[controlTmp].Controls.Add(Button_IndexLast);

         e.Row.Controls[0].Controls[0].Controls[0].Controls[controlTmp].Controls.Add(label_Index);

        //e.Row.Controls[0].Controls.Add(label_Index);
     }
    #endregion
}


protected void PageButtonClick(object sender, EventArgs e)
{
     LinkButton clickedButton = ((LinkButton)sender);
    if (clickedButton.CommandName == "first")
     {
         GridView1.PageIndex = 0;
     }
    else if (clickedButton.CommandName == "next")
     {
        if (GridView1.PageIndex < GridView1.PageCount - 1)
         {
             GridView1.PageIndex += 1;
         }
     }
    else if (clickedButton.CommandName == "previous")
     {
        if (GridView1.PageIndex >= 1)
         {
             GridView1.PageIndex -= 1;
         }
     }
    else if (clickedButton.CommandName == "last")
     {
         GridView1.PageIndex = GridView1.PageCount - 1;
     }
}
分享到:
评论

相关推荐

    【ASP.NET编程知识】asp.net gridview分页:第一页 下一页 1 2 3 4 上一页 最末页.docx

    例如,可以使用 C# 来实现数据的分页,实现上一页、下一页、第一页、最后一页的跳转逻辑等。 GridView 分页的常见问题 1. 如何实现 GridView 的分页? 2. 如何实现上一页、下一页、第一页、最后一页的跳转逻辑? 3...

    android Gridview分页实现

    4. 监听器:在GridView中添加OnScrollListener,当用户滚动到底部时,触发加载下一页。 ```java gridView.setOnScrollListener(new AbsListView.OnScrollListener() { @Override public void ...

    asp.net gridview分页:第一页 下一页 1 2 3 4 上一页 最末页

    主要介绍了asp.net gridview分页:第一页 下一页 1 2 3 4 上一页 最末页,可使用上下键选中行,选中后点击修改,textbox获得gridview中的代码的数据,需要的朋友可以参考下

    gridview 分页保存每页的Checkbox选中的值

    但这意味着,如果用户在某一页选择了Checkbox,然后翻到下一页,之前的选择状态不会被保留,因为新的页面加载会覆盖旧的状态。 为了解决这个问题,我们可以利用ViewState属性。ViewState是一种服务器端的状态管理...

    GridView分页

    默认情况下,GridView会生成简单的上一页/下一页按钮。但你可以通过修改`PagerSettings`属性来自定义分页样式。例如,显示页码选择器: ```asp &lt;asp:GridView ID="GridView1" runat="server" AllowPaging="true" ...

    如何在gridView中控制分页显示

    分页的形式可以显示一组称为“页导航”的控件,例如以数字显示页面链接或“首页/上一页/下一页/最后一页”显示页面链接,用户使用这些控件可以在控件内的页面之间跳转。为了实现这一功能,我们需要利用`...

    C#WinformGridView分页demo.rar

    5. **自定义控件或扩展**:在某些情况下,可能需要创建自定义控件或者扩展默认的GridView功能来实现分页,比如自定义分页栏,包含“上一页”、“下一页”、“跳转到页”等功能。 6. **性能优化**:在处理大量数据时...

    自定义GridView分页模板

    在示例代码中,`PagerTemplate`包含了一个表格,用于展示当前页码、总页数以及四个链接按钮(首页、上一页、下一页、末页)。这些按钮的`CommandName`属性设置为`Page`,以便在用户点击时触发`RowCommand`事件。`...

    ASPxGridview分组和分页功能

    默认情况下,ASPxGridView会显示每页的页码,用户可以通过点击页码或使用导航按钮(上一页、下一页)来切换页面。 2. **自定义每页记录数**: 可以通过`PageSize`属性设置每页显示的记录数。用户也可以选择提供一个...

    Gridview分页

    最后,为了提供“上一页”、“下一页”、“首页”和“尾页”的按钮,可以手动添加这些链接按钮到页面的footer部分,或者在GridView的`PagerSettings`中配置样式和位置。以下是在GridView中自定义分页样式的方式: `...

    Android GridView分页显示

    在Android开发中,GridView是一种常用的布局管理器,它允许我们以网格的形式展示数据,通常用于创建类似相册、应用列表等界面。当我们处理大量数据时,为了提高用户体验和性能,通常会采用分页加载的方式。本篇文章...

    gridview分页控件

    1. 分页导航链接:GridView控件默认生成“上一页”、“下一页”链接以及页码链接。可以通过`PagerSettings`属性进行自定义,例如: ```asp &lt;asp:GridView ID="GridView1" runat="server" AllowPaging="true" ...

    GridView分页整套精美样式

    4. `.gridview-first`、`.gridview-last`、`.gridview-prev`、`.gridview-next`:分别对应“首页”、“末页”、“上一页”和“下一页”的按钮,可以为其设定特殊的图标或样式。 例如,以下是一个简单的CSS代码示例...

    android gridview分页和滑动效果

    在Android开发中,GridView是一种非常常见的布局控件,它允许我们以网格的形式展示数据,通常用于创建类似相册、应用列表等场景。本教程将详细讲解如何实现GridView的分页和滑动效果。 首先,我们需要了解GridView...

    GridView的左右滑动+分页

    在标题"GridView的左右滑动+分页"中,提到的功能是为GridView添加左右滑动以及分页加载数据,这在处理大量数据时非常有用,既能提供良好的用户体验,又能优化性能。 首先,让我们详细讲解如何实现GridView的左右...

    gridview分页效果

    "gridview分页效果"是Android开发中的一个重要知识点,主要涉及到如何在GridView中实现数据的分页加载,以提高用户体验并优化性能。 首先,我们需要理解GridView的工作原理。GridView继承自AbsListView,它会根据其...

    最简单的GridView自定义分页

    2. 添加“上一页”、“下一页”按钮:创建两个LinkButton,设置合适的事件处理程序和导航逻辑。 3. 自定义样式:可以通过CSS对GridView的分页栏进行样式定制,以提升用户体验。 总结,实现“最简单的GridView自定义...

    GridView分页全

    此外,还可以自定义分页UI,比如添加上一页、下一页、跳转到指定页的按钮。 批量删除功能可以通过在GridView中添加复选框列实现。每个数据行都包含一个复选框,用户可以选中多个行然后进行批量删除操作。这通常需要...

    GridView分页和选择某条记录

    对于分页,可以使用PagerSettings来配置分页样式,如显示页码数、是否显示“第一”、“上一页”、“下一页”、“最后”按钮等。对于选择记录,可能需要考虑禁用多选(默认是允许多选)或设置行的样式来突出选中状态...

    C# Winform+devexpress 自定义分页控件

    此项目通过自定义分页控件,实现了上一页、下一页、跳转到首页和末页的功能,同时显示总记录数和总页数,这样用户可以轻松浏览和操作大量数据,而无需一次性加载所有数据,提高了应用的性能和用户体验。 `...

Global site tag (gtag.js) - Google Analytics