GridVew 隐藏列取不到值

有时候我们可能需要读出数据库中的一些字段,但是又不将这些字段值显示到前台,这时候很多人就马上想到将该字段设置为隐藏(visuable=false) 不就解决了吗。

不错最终我们都是将其设置为 false,关键在于你什么时候设置。

起初我在前台编辑列中直接将 visuable 属性设置为 false ,结果我在 RowDataBound 事件中始终取不到该列的值,调了好半天,发现原来这样的做法会导致该列在数据绑定时没有被赋值。

解决办法:

在GridView   的 RowCreated 事件中将对应列的 visuable 属性设置为 false ,而不是在前台设置。这样子做不但该列获取到了值,同时也被设置为不可见。

 

protected   void  gvProjectInfo_RowCreated( object  sender, GridViewRowEventArgs e)
    
{
        
if (e.Row.RowType == DataControlRowType.DataRow||e.Row.RowType == DataControlRowType.Header)
        
{
            e.Row.Cells[
4].Visible = false;
            e.Row.Cells[
5].Visible = false;
        }

    }
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值