总结一下Gridview隐藏列的问题,下面说几种方法:
方法一: 就是直接让你得到的数据表里面的那一列不给他绑定值、确保你Table里面包含这列数据,比如把你要查询出来两列:name;id,你现在只想显示name,不显示id,但是后台代码还要用到id的值的时候,就直接查询出来,把name绑定到Gridview上的一列,然后设置Gridview的DataKeyName="id",然后在后台取值的时候直接取值就可以了,例如要取得第一行的id的值就直接GridView1.DataKeys[1]["id"] 就可以了,
方法二:
在 GridView1_RowCreated 事件里面直接写入:if (e.Row.RowType == DataControlRowType.DataRow ||
e.Row.RowType == DataControlRowType.Header)
{
e.Row.Cells[0].Visible = false; //如果id是第一列,则将它的可见性设为false ,
}
取值的时候直接e.Row.Cells[0]就可以了
方法三(我用的方法):
------------------css---------------
.dis
{
display:none ;
}
-------------------html----------------
<asp:BoundField DataField="movieId" HeaderText="视频id"
ReadOnly="True" >
<FooterStyle CssClass="dis" />
<HeaderStyle CssClass="dis" />
<ItemStyle CssClass="dis" />
</asp:BoundField>