GridView不能像DataGrid一样将隐藏列Visable=false就行了,这样后台是读取不到此隐藏列的数据的。今天总结了两个方法,可以解决这个问题。
1、使用css
在css文件中加入
.hidden { display:none;}
然后在GridView的列编辑对话框中,对需要进行隐藏的列进行设置,分别设置FootStyle,HeaderStyle,ItemStyle的CssClass属性为“hidden”即可。
2、使用GridView本身的属性
虽然方法一可以实现,但总觉得不是一个好方法,其实可以利用GridView本身的属性来实现,就是说GridView已经提供了这样的功能。
首先在设置DataKeyNames属性(可以设置多个),如下:
<asp:GridView ID="GridView1" runat="server" DataKeyNames="ID" >
然后读取,比如要读取第i行的ID的值:
string id=GridViews1.DataKeys[i]["ID"].ToString();