DataGridview第一列隐藏

        private void filldgv()
        {
           
            dgvDevice.Columns.Clear();
            dgvDevice.AutoGenerateColumns = false;

            /*GV显示的列*/
            Dictionary<string, string> dataText = new Dictionary<string, string>();
            dataText.Add("DetailsID", "DetailsID");
            dataText.Add("ID", "ID");
            dataText.Add("DeviceID", "DeviceID");
 
            foreach (KeyValuePair<string, string> kvp in dataText)
            {
                    DataGridViewTextBoxColumn dgvc = new DataGridViewTextBoxColumn();

                    dgvc.DataPropertyName = kvp.Key;
                    dgvc.HeaderText = kvp.Value;
                    dgvc.Name = kvp.Key;

                    dgvc.SortMode = DataGridViewColumnSortMode.Automatic;
                    //dgvc.AutoSizeMode = DataGridViewAutoSizeColumnMode.AllCells;
                    dgvc.HeaderCell.Style.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
                    if (kvp.Key == "DetailsID" )
                        dgvc.Visible = false;
                    dgvDevice.Columns.Add(dgvc);  
            }
        }

写了一个绑定的函数,放在form_load里面一切正常,但是若是放在绑定数据源时,第一列就怎么也隐藏不了,可是,存在多个datagridview,必须在绑定时判断,于是查了很多,感觉这个说的最为靠谱:

DataGridView第一列无法隐藏是因为默认的活动单元格在第一行第一列

所以只需修改这个默认的活动单元格再隐藏,例如

Datagridview.CurrentCell = Datagridview.Rows(0).Cells(1);

Datagridview.Columns[0].Visible = false;

 

自己还想了一个笨方法,但也很好用,就是调一下datagridview中列的显示顺序,把可见列调到第一个,后面的再隐藏,这样在页面上也没有任何区别。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值