在DataGridView 中显示 DataGridViewCheckBoxCell CheckBox 复选框

我们先来看下效果实现的前后对比。
实现前的效果实现前的效果
实现后的效果实现后的效果
|---------------------------------------------------------------------------------------------------------------|

说明一下:Switch 中的数据(True/False)表示开关,是直接从数据库中获取的(字符类型)。在数据集显示到DataGridView 控件后是这个样子的:
实现前的效果

我需要数据集显示到DataGridView 控件后的效果的这个样子的:
实现后的效果
没错,就是在Switch栏中用CheckBox 复选框代替文本。

代码如下:

var ItemsData = QueryItemsData(); // QueryItemsData为查询方法,将查询返回的数据交给ItemsData 
dataGridView.DataSource = new BindingList<Class.LoadTestItemsClass.ItemsInfo>(ItemsData);// dataGridView 控件绑定数据源ItemsData 
   for (int i = 0; i < dataGridView.Rows.Count; i++)
   {
       if (dataGridView.Rows[i].Cells["Switch"].Value.ToString() == "True")
       {
           dataGridView["Switch", i] = new DataGridViewCheckBoxCell();	// 重点在这里
           dataGridView["Switch", i].Value = true.ToString();			// 重点在这里
       }
       else
       {
           dataGridView["Switch", i] = new DataGridViewCheckBoxCell();	// 重点在这里
           dataGridView["Switch", i].Value = false.ToString();			// 重点在这里
       }
   }

注释掉 for 循环就还原到了没有CheckBox复选框的状态。

我这样做的最终目的是想直接通过CheckBox 的勾选就可以直接修改这个开关的状态,而不需要通过打字来修改 True/False ,这个功能后面再单独开一遍。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值