强制显示ASP.NET GridView的分页控件

15

有没有办法强制Gridview的分页器显示出来,即使屏幕上只有一页数据?

我正在构建一个基于Gridview的控件,带有自定义的分页器(包含每页显示行数的下拉列表),一切都运行良好,除非用户选择的每页行数大于网格的当前行数。此时分页器会消失。我已经在谷歌上搜索了这个问题,我认为应该在覆盖OnRowCreated中做些什么......

自定义分页器是通过覆盖InitializePager来添加的。如果需要,我很乐意提供更多信息!

问候, J.Arola

4个回答

25

好的,这并不太难 :-)

根据我的初步测试,以下方法可行:

GridViewRow pagerRow = (GridViewRow) this.BottomPagerRow;

if(pagerRow != null && pagerRow.Visible == false)
pagerRow.Visible = true;

我刚刚将这个加入了重写的OnPreRender中,然后啊,分页器就出现了,即使只有一页数据。不过在确认之前还需要进行一些额外的测试。这对我来说似乎太简单了。


10

上述方法有效。 但是这个也可能会有帮助。

GridView.BottomPagerRow.Visible=true

6
   protected void GridView_PreRender(object sender, EventArgs e)
    {
        GridView gv = (GridView)sender;
        GridViewRow pagerRow = (GridViewRow)gv.BottomPagerRow;

        if (pagerRow != null && pagerRow.Visible == false)
            pagerRow.Visible = true;
    }

3

GridView.BottomPagerRow.Visible=true 运行良好。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接