All articles(网络文学目录) All Pictures(图片目录) All Softwares(软件目录)

 
在GridView数据源为空时也显示表头_[Asp.Net教程]

Writer: 归海一刀 Article type: Programming skills(编程技巧) Time: 2014/1/30 1:33:02 Browse times: 291 Comment times: 0

在GridView数据源为空时也显示表头_[Asp.Net教程]


Head photo

Go homepage
Upload pictures
Write articles

在GridView数据源为空时也显示表头_[Asp.Net教程] 首先,需要GridView的AutoGenerateColumn属性为false。
进行正常的绑定后,添加页面事件
this.PreRender += OnPagePreRender;
这个事件只要比绑定晚就可以,不必非得是PreRender。
然后判断如果数据源无数据,就执行以下代码

if (gridView.DataSource is DataTable
&& ((DataTable)gridView).DataSource).Rows.Count == 0)
{
DataTable dt = new DataTable("EmptyTable");
foreach (DataControlField field in gridView.Columns)
{
if (field is BoundField)
{
dt.Columns.Add(((BoundField) field).DataField);
}
}
ArrayList values = new ArrayList();
for (int i = 0; i < dt.Columns.Count; i++)
{
values.Add(null);
}
dt.Rows.Add(values.ToArray());

gridView.DataSource = dt;
gridView.DataBind();
}


这样表头就显示出来了。
不过这里只对数据绑定类型的列(BoundField)进行了处理,如果还有其它类型的列还需要增加相应的处理代码。




There are 0 records,
Comment:
Must be registered users to comment(必须是注册用户才能发表评论)

Disclaimer Privacy Policy About us Site Map
Copyright ©2011-
uuhomepage.com, Inc. All rights reserved.