当一个列的可见性设置为false,控件不会再将数据绑定到该列中,所以你尝试得到隐藏列的值时,只能得到一个空的字符串。
所以有一个解决办法,就是在设置GridView时,先将列设置为可见。然后:
在RowCreated事件中书写如下代码
void GridView1_RowCreated(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow ||
e.Row.RowType == DataControlRowType.Header)
{
e.Row.Cells[0].Visible = false; //如果想使第1列不可见,则将它的可见性设为false
}
//可以根据需要设置更多的列
}
因为在RowCreated事件(隐藏)在绑定时候发生,所以这样就即能将数据绑定到列上,又隐藏了该列.所以可以访问到隐藏列的值。
这样,我们就可以通过使用
string temp = gridview1.SelectedRow.Cells[列号].Text.ToString();
来获取选择的行的指定列的值了,但是需要注意的是:当数据源中该字段为NULL或“”时,这样取出来的值会是“ ”。
如何取GridView中隐藏列的值
最新推荐文章于 2022-03-04 13:24:37 发布
本文介绍了一种在不显示列的情况下仍能访问其值的方法。通过在RowCreated事件中设置列的可见性为false,可以在绑定数据后隐藏列,并且能够通过Cells属性获取隐藏列的数据。
681

被折叠的 条评论
为什么被折叠?



