在 Gridview 分页上添加“上一页,下一页,共X页,跳转到第X页”等信息
2011-10-19 12:11
357 查看
原理比较简单,
就是利用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 事件
View Code
这里主要有三个方法, BindGridView()方法,从数据库提取数据绑定到GridView控 件。 GridView1_PageIndexChanging方法,在用户单击上一页,下一页,首页,尾页的时候,通过 GridView1.PageIndex = e.NewPageIndex语句来设置GridView控件应该显示的分页数据,然后通过 TextBox tb = (TextBox)GridView1.BottomPagerRow.FindControl("inPageNum"); tb.Text = (GridView1.PageIndex + 1).ToString();语句在Textbox中显示当前页码。
GridView1_RowCommand方法,在这里是响应用户自己输入页码点击Button按钮的事件。首先获取用户输入的页码数,然后调用 GridView1_PageIndexChanging方法,使GridView更新数据。
就是利用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 事件
View Code
private void BindGridView() { using (BlogDataContext bdc = new BlogDataContext()) { var artList = bdc.Blog_GetAllCommentationArticles(); Blog_GetAllCommentationArticlesResult g = new Blog_GetAllCommentationArticlesResult(); GridView1.DataSource = artList; GridView1.DataBind(); } } protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e) { try { GridView1.PageIndex = e.NewPageIndex; BindGridView(); TextBox tb = (TextBox)GridView1.BottomPagerRow.FindControl("inPageNum"); tb.Text = (GridView1.PageIndex + 1).ToString(); } catch { } } protected void GridView1_RowCommand(object sender, GridViewCommandEventArgs e) { if (e.CommandName == "go") { try { TextBox tb = (TextBox)GridView1.BottomPagerRow.FindControl("inPageNum"); int num = Int32.Parse(tb.Text); GridViewPageEventArgs ea = new GridViewPageEventArgs(num - 1); GridView1_PageIndexChanging(null, ea); } catch { } } }
这里主要有三个方法, BindGridView()方法,从数据库提取数据绑定到GridView控 件。 GridView1_PageIndexChanging方法,在用户单击上一页,下一页,首页,尾页的时候,通过 GridView1.PageIndex = e.NewPageIndex语句来设置GridView控件应该显示的分页数据,然后通过 TextBox tb = (TextBox)GridView1.BottomPagerRow.FindControl("inPageNum"); tb.Text = (GridView1.PageIndex + 1).ToString();语句在Textbox中显示当前页码。
GridView1_RowCommand方法,在这里是响应用户自己输入页码点击Button按钮的事件。首先获取用户输入的页码数,然后调用 GridView1_PageIndexChanging方法,使GridView更新数据。
相关文章推荐
- 在 Gridview 分页上添加“上一页,下一页,共X页”等信息
- GridView 分页 上一页 下一页 跳转 前端分页
- 原生JS实现分页效果2.0(新增了上一页和下一页,添加当前元素样式)
- easyUI pagination分页控件点击下一页后跳转到最后一页
- GridView分页后跳转其他页面进行添加,编辑,删除操作后,仍返回到当前页码
- 自己为 GridView 写分页 如: [首页][上一页][下一页][末页]
- gridView里如何添加详情按钮,点击它可以转到另一页,以获取该行的详细信息。
- GridView自带分页 1总页数 首页 下一页 上一页 尾页 X 页 go 实现方法 .
- 将模版列功能改造成博客内容列表, 并使完成分页 (使用分页模板完成,显示上一页,下一页,第一页,最后一页,和当前第x页,共y页 。)
- GridView自定义分页样式(上一页,下一页,到第几页)(新手教程)
- asp.net gridview分页:第一页 下一页 1 2 3 4 上一页 最末页
- Asp.net(c#)GridView分页时用图片显示上一页,下一页
- 将模版列功能改造成博客内容列表, 并使完成分页 (使用分页模板完成,显示上一页,下一页,第一页,最后一页,和当前第x页,共y页 。)
- GridView分页(第一页、上一页、下一页、最后页、当前页数/总页数)
- GridView分页后跳转其他页面进行添加,编辑,删除操作后,仍返回到当前页码[原]
- 给GridView设置分页格式:首页、上一页、下一页、尾页。
- GridView自定义分页样式(上一页,下一页,到第几页)
- GridView自定义分页样式(上一页,下一页,到第几页)(新手教程)转载http://www.cnblogs.com/xuanhun/archive/2010/04/14/1712132.html
- GridView获取当前行的信息以及在一列上添加页面跳转
- gridview分页变成上一页,下一页模式!很简单的哦!