不知道大家有没有这样的经验,当点击或者取消datagridview的checkbox列时,比较难获得其状态是选中还是未选中,进而不好进行其它操作。网上方法有不少可是总是效果差强人意。

下面就列出它的个人认为较完美的解决办法:

主要用到了datagridview的CurrentCellDirtyStateChanged和CellValueChanged两个事件

CurrentCellDirtyStateChanged事件是提交对checkbox状态的修改

CellValueChanged事件是当状态提交后,也就是单元格值改变后做一些其它的操作,这里是将checkbox列的true或false状态作为tooptiptext属性设置到同一行的button列

CurrentCellDirtyStateChanged事件代码 :

private void dataGridView1_CurrentCellDirtyStateChanged(object sender, EventArgs e)
{
  if (this.dataGridView1.IsCurrentCellDirty) //有未提交的更//改
  {
    this.dataGridView1.CommitEdit(DataGridViewDataErrorContexts.Commit);
  }
}

CellValueChanged事件代码 :

private void dataGridView1_CellValueChanged(object sender, DataGridViewCellEventArgs e)
{
  if (this.dataGridView1.Columns[e.ColumnIndex].Name.Equals("gender"))
  {
    DataGridViewButtonCell dgvButtonCell = this.dataGridView1.Rows[e.RowIndex].Cells["btn"] as DataGridViewButtonCell;//获得button列单元格
    dgvButtonCell.ToolTipText = dataGridView1.Rows[e.RowIndex].Cells[e.ColumnIndex].Value.ToString();//获得checkbox列单元格的值并赋值
  }
}

转自:http://www.cnblogs.com/gossip/archive/2008/12/02/1346047.html

转载于:https://www.cnblogs.com/phcis/archive/2010/11/29/1890711.html

【转】datagridview的checkbox列,当修改checkbox状态时实时获得其准确状态值相关推荐

  1. C1DataGrid for Silverlight 修改 CheckBox 列外观

    在C1DataGrid for Silverlight中,如果包含DataGridCheckBoxColumn类型的列,你会发现该列中单元格处于非编辑状态时,CheckBox都被显示成灰色. 本文也将 ...

  2. C# winform单元格的formatted值的类型错误 DataGridView中CheckBox列运行时候System.FormatException异常

    C# winform单元格的formatted值的类型错误 DataGridView中CheckBox列运行时候System.FormatException异常 参考文章: (1)C# winform ...

  3. C# 怎样判断 datagridview 中的checkbox列是否被选中

    开发(winform)时碰到这个问题 C# 怎样判断 datagridview 中的checkbox列是否被选中,错误原因都C#对类型判断相当严格,为了避免大家以后多走弯路,把我的思路和大家说一下,希 ...

  4. 关于无法修改CheckBox样式的解决方案

    关于无法修改CheckBox样式的解决方案 参考文章: (1)关于无法修改CheckBox样式的解决方案 (2)https://www.cnblogs.com/yangjf/archive/2012/ ...

  5. 使用css修改checkbox选择框的样式

    二. 修改思路: 给原本的checkbox框加上visibility: hidden;属性,使其隐藏同时又占据原本在页面上面的位置,说直白点就是,使checkbox看不见,但是仍然占有原来的位置. 然 ...

  6. 通过CSS修改checkbox样式(利用label的for属性进行焦点传递)

    需求背景: 在页面设计时,常常会用到input复选框.如果用到一些前端框架的话,一般复选框的样式都可以满足需要:但是对于未使用前端框架,直接原生的话样式可能满足不了项目需要,因此我们需要修改复选框的样 ...

  7. 【uni-app】深度作用选择器解决修改checkbox样式无效问题

    uni-app表单多项选择器需要使用内置组件checkbox,具体使用见官网链接,如下: checkbox - uni-app官网 (dcloud.io) 官方给出h5端的默认样式是这样的: ​ 现在 ...

  8. EditorGridPanel 中使用checkbox列,并包含afterEdit事件

    在EditorGridPanel中无法使用默认的CheckBox控件,因此采用第三方扩展的控件实现, 以下是Ext.grid.CheckColu扩展类: Ext.grid.CheckColumn = ...

  9. css 对checkbox样式进行修改

    使用伪类元素对checkbox样式进行修改边框样式在before中修改,"\2713"为字符表勾选字符<style>input[type="checkbox& ...

最新文章

  1. php 原生多图上传,php 原生多图文件上传
  2. javax.naming.NameNotFoundException:
  3. vista任务栏透明_在Windows XP中获取Vista任务栏缩略图预览
  4. 前端可视化开发-编辑器
  5. python中random is not defined_Python random库使用方法及异常处理方案
  6. 股票历史数据下载工具_免费在线批量下载股票历史数据工具
  7. UE4开发笔记1——UE4(虚幻4)引擎下载与安装
  8. ERP实施项目主体计划模板
  9. 西门子界面官方精美触摸屏+WINCC程序模板 西门子官方触摸屏程序模板
  10. 【新品发布】行业领先数据恢复“先锋”震撼来袭
  11. python快速搭建服务器方法
  12. Linux root密码暴力破解及重置的三种方式
  13. 《现代密码学教程》| 谷利泽 | 课后答案 | 个人整理
  14. 现身说法,如何给上司送礼物
  15. 大连海事大学信息与通信工程系808考研上岸经验分享
  16. 鸿博信通语音调度解决方案
  17. 我们偷窥了「1024」个大厂程序员的工位,发现了最适合的恋爱对象
  18. android-手势解锁
  19. gsview 安装与使用
  20. 我今天写了一代可执行可执行文件的代码东东,请参详

热门文章

  1. shell重启jar包
  2. 用java实现验证码(CAPTCHA)
  3. 爱说说技术原理:前后台参数约定及逻辑代码(三)
  4. 互联网产品设计常用文档类型-BRD、MRD、PRD、FSD
  5. EXCHANGE 2010 DAG 实验总结
  6. Flex实现分页显示功能(mx:DataGrid)
  7. Cannot resolve field [content], input field list:[contents].
  8. <scope>test</scope>的作用
  9. Google Drive的linux客户端使用(还没弄完)
  10. xfce4截图的快捷键设置