GridView 始终显示 Pager 分页行的一种方法
2008-10-15 09:33
323 查看
GridView 是 ASP.NET 2.0 新增加的 Web 控件,拥有比 DataGrid 更多的扩展和改进。使用 GridView 可以很容易的实现数据分页,但是遗憾的是,在缺省情况下,当仅有一页数据时, GridView 不显示 Pager 分页行,这非常让人郁闷。
在网上搜索了一下解决此问题的有关方法,基本的思路都是使用自定义 Pager,自己实现分页显示。这个思路很好,可是我的应用并不复杂,对分页也没有特殊的要求,只是能显示就好,为了这么点要求重写写那么多代码,太不划算。有没有好的解决方法呢?
还真不是没办法,我发现 GridView 的 Controls 集合中包括了 Header、DataRow、Footer、Pager等等所有可以显示的行,而且不管有没有显示,这些行都包含在 Controls 集合中,只不过仅有一页数据时,Pager 行的 Visible 属性被设置为了 false。既然如此,只要在数据绑定结束后把 Pager 行的 Visible 重新设置为 true 不就解决问题了吗?下面是解决方法:
public static void gridView_DataBound(object sender, EventArgs e)
{
if (gridView.Rows.Count != 0)
{
Control table = gridView.Controls[0];
int count = table.Controls.Count;
table.Controls[count - 1].Visible = true;
}
}
在网上搜索了一下解决此问题的有关方法,基本的思路都是使用自定义 Pager,自己实现分页显示。这个思路很好,可是我的应用并不复杂,对分页也没有特殊的要求,只是能显示就好,为了这么点要求重写写那么多代码,太不划算。有没有好的解决方法呢?
还真不是没办法,我发现 GridView 的 Controls 集合中包括了 Header、DataRow、Footer、Pager等等所有可以显示的行,而且不管有没有显示,这些行都包含在 Controls 集合中,只不过仅有一页数据时,Pager 行的 Visible 属性被设置为了 false。既然如此,只要在数据绑定结束后把 Pager 行的 Visible 重新设置为 true 不就解决问题了吗?下面是解决方法:
public static void gridView_DataBound(object sender, EventArgs e)
{
if (gridView.Rows.Count != 0)
{
Control table = gridView.Controls[0];
int count = table.Controls.Count;
table.Controls[count - 1].Visible = true;
}
}
相关文章推荐
- GridView 始终显示 Pager 分页行的一种方法
- GridView绑定数据源,无记录时表头也显示的一种解决方法
- 海量(大量)数据GridView显示高效率分页实现方法
- GridView绑定数据源,无记录时表头也显示的一种解决方法
- 让GridView始终显示Pager
- GridView绑定数据源,无记录时表头也显示的一种解决方法
- gridview 自定义分页显示数据处理方法
- GridView绑定数据源,无记录时表头也显示的一种解决方法
- GridView分页方法(显示总页数、当前页)
- GridView绑定数据源,无记录时表头也显示的一种解决方法
- GridView绑定数据源,无记录时表头也显示的一种解决方法
- GridView绑定数据源,无记录时表头也显示的一种解决方法
- GridView绑定数据源,无记录时表头也显示的一种解决方法
- 解决汉字显示问题的一种方法:
- 使用RecyclerView实现多行水平分页的GridView效果和ViewPager效果
- ASP.NET-GridView分页排序显示
- 一种保护眼睛好方法(改变文档显示颜色)
- gridview无数据行时显示表头的方法
- SDL2.0在mfc窗口中显示yuv的一种方法
- python类中显示重写__del__方法引起循环引用的对象无法释放,一种循环引用的检测方法