码迷,mamicode.com
首页 > Windows程序 > 详细

啥?客户叫在DataGridView的左上角添加CheckBox?

时间:2019-04-22 14:00:57      阅读:185      评论:0      收藏:0      [点我收藏+]

标签:ext   nbsp   wro   ima   图片   png   cli   tco   edit   

效果图是这样的,如何把CheckBox放到左上角是最重要的。

技术图片

添加方法 InitColumnInfo() 方法,代码如下。

 private void InitColumnInfo()
        {
            int index = 0;

            DataGridViewCheckBoxColumn colCB = new DataGridViewCheckBoxColumn();
            DatagridViewCheckBoxHeaderCell cbHeader = new DatagridViewCheckBoxHeaderCell();
            colCB.HeaderCell = cbHeader;
            colCB.HeaderText = "";
            colCB.FillWeight = 50;
            cbHeader.OnCheckBoxClicked += new CheckBoxClickedHandler(cbHeader_OnCheckBoxClicked);
            dataGridView2.Columns.Insert(index, colCB);

            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle2 = new System.Windows.Forms.DataGridViewCellStyle();
            dataGridViewCellStyle2.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;//211, 223, 240
            dataGridViewCellStyle2.ForeColor = System.Drawing.Color.Blue;
            dataGridViewCellStyle2.SelectionForeColor = System.Drawing.Color.Blue;
            dataGridView2.Columns[index].DefaultCellStyle = dataGridViewCellStyle2;
        }

在Clicked事件中添加代码

private void cbHeader_OnCheckBoxClicked(bool state)
        {
            //这一句很重要结束编辑状态
            dataGridView2.EndEdit();
            dataGridView2.Rows.OfType<DataGridViewRow>().ToList().ForEach(t => t.Cells[0].Value = state);
        }

最后在窗体的Load事件中,调用 InitColumnInfo() 方法就可以了。

啥?客户叫在DataGridView的左上角添加CheckBox?

标签:ext   nbsp   wro   ima   图片   png   cli   tco   edit   

原文地址:https://www.cnblogs.com/ZaraNet/p/10749575.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!