再次郁闷了,05的GridView隐藏列就不能进行绑定值,也就是如果把某列设置为visible=false,则不会进行数据绑定,也就是说无法直接从GridView中取到这个列内的文本。
   查了下资料了解了原来还是05对标准web 2.0的支持。
   这一功能在DataGrid 时代几乎是必须的,在对列表进行批量选中操作时非常有用(比如批量删除),隐藏列通常用于存储DataGrid行对应数据记录的关键字的值,而现在在 GridView中却行不通,着实令一大批人头疼不已,网上也有了其解决方案,其中一个如下,其原理是在行创建时设置其css样式为不可见,这样可以避免直接设置列的visible=false带来的数据不绑定问题:

void GridView1_RowCreated(object sender, GridViewRowEventArgs e)
{
 
//让索引为0的列不可见,实际上是产生的css代码
 e.Row.Cells[0].Visible = false;
 
//other code if neccecary
}


还有一个就是对绑定列进行样式的设置
(1)设置一个css类:

 .hidden { display:none;}

(2)随后在GridView的列编辑对话框中,对需要进行隐藏的列进行设置,分别设置FootStyle,HeaderStyle,ItemStyle的CssClass属性为“hidden”

这样就可以像03中DataGrid里的隐藏列传值一样效果了

posted on 2008-07-14 11:41  Smthhy  阅读(1601)  评论(3编辑  收藏  举报