有没有办法强制Gridview的分页器显示出来,即使屏幕上只有一页数据?
我正在构建一个基于Gridview的控件,带有自定义的分页器(包含每页显示行数的下拉列表),一切都运行良好,除非用户选择的每页行数大于网格的当前行数。此时分页器会消失。我已经在谷歌上搜索了这个问题,我认为应该在覆盖OnRowCreated中做些什么......
自定义分页器是通过覆盖InitializePager来添加的。如果需要,我很乐意提供更多信息!
问候, J.Arola
有没有办法强制Gridview的分页器显示出来,即使屏幕上只有一页数据?
我正在构建一个基于Gridview的控件,带有自定义的分页器(包含每页显示行数的下拉列表),一切都运行良好,除非用户选择的每页行数大于网格的当前行数。此时分页器会消失。我已经在谷歌上搜索了这个问题,我认为应该在覆盖OnRowCreated中做些什么......
自定义分页器是通过覆盖InitializePager来添加的。如果需要,我很乐意提供更多信息!
问候, J.Arola
好的,这并不太难 :-)
根据我的初步测试,以下方法可行:
GridViewRow pagerRow = (GridViewRow) this.BottomPagerRow;
if(pagerRow != null && pagerRow.Visible == false)
pagerRow.Visible = true;
我刚刚将这个加入了重写的OnPreRender中,然后啊,分页器就出现了,即使只有一页数据。不过在确认之前还需要进行一些额外的测试。这对我来说似乎太简单了。
上述方法有效。 但是这个也可能会有帮助。
GridView.BottomPagerRow.Visible=true
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;
}
GridView.BottomPagerRow.Visible=true 运行良好。