.NEt专家博客!
GridView 始终显示 Pager 分页行的一种方法
上一篇 /
下一篇 2008-10-09 14:38:43
/ 个人分类:WEB开发
最近一直在使用 ASP.NET,由于之前大部分工作都是使用 WinForm,对 ASP.NET 的理解还只是停留在表面,所以借着这次机会,深入的研究一下 ASP.NET。原则是尽量使用 ASP.NET 的编程模型和 Web 控件实现业务交互。
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)
:z"Q
R)Sdfy0 {
/}-HF1F^/n"kN0 if (gridView.Rows.Count != 0)ITPUB个人空间Pj"I7x#dXB$?
{ITPUB个人空间
l3t6Qb:B
Control table = gridView.Controls[0];
f-oQ%gm'J%Oo-`4m0 int count = table.Controls.Count;
T w9nSd$S@8zU@0 table.Controls[count - 1].Visible = true;ITPUB个人空间\d4c,a{9V:m/Dp
}
ML+x%@V0 }ITPUB个人空间:ol$XM,z%J;fJ
相关阅读:
- asp.net面试试题收集 (iDotNetSpace, 2008-10-08)
- asp.net很有用的字符串操作类,值得收藏 (iDotNetSpace, 2008-10-08)
- 获取服务器的时间及日期类 (iDotNetSpace, 2008-10-08)
- 如何创建Code Snippet (iDotNetSpace, 2008-10-08)
- .Net 中的托管函数 Delegate (iDotNetSpace, 2008-10-08)
- Web 2.0理念在产品应用中的借鉴之处 (iDotNetSpace, 2008-10-08)
- GridView数据绑定 (iDotNetSpace, 2008-10-09)
- ASP.NET 动态输出Javascript 文本格式换行问题 [ASP.NET | C# | Response] (iDotNetSpace, 2008-10-09)
- c# winFrom 使窗体显示SplitContainer或Panel中 (iDotNetSpace, 2008-10-09)
- 从sql server 或 Access 中随即查询出几条数据 (iDotNetSpace, 2008-10-09)
导入论坛
引用链接
收藏
分享给好友
推荐到圈子
管理
举报
TAG:
微软