博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
DataGridView DataGridViewCheckBoxColumn编辑时实时触发事件
阅读量:4504 次
发布时间:2019-06-08

本文共 1183 字,大约阅读时间需要 3 分钟。

正常响应CellValueChanged()事件时,当改变checkbox状态时,只有当焦点离开该单元格时才能触发CellValueChanged()事件,

如果要改变checkbox值时实时触发CellValueChanged()事件,需要借用CurrentCellDirtyStateChanged()事件来提交未提交控件的更改。

 

private void dataGridView1_CurrentCellDirtyStateChanged(object sender, EventArgs e)         {
if (dataGridView1.IsCurrentCellDirty) {
dataGridView1.CommitEdit(DataGridViewDataErrorContexts.Commit); } }

这样CellValueChanged()事件就可以随着checkbox的值的改变实时触发;

 

private void dataGridView1_CellValueChanged(object sender, DataGridViewCellEventArgs e)         {
if (e.RowIndex >= 0 && e.RowIndex != -1 && !dataGridView1.Rows[e.RowIndex].IsNewRow) {
if (e.ColumnIndex == 7) {
if ((bool)this.dataGridView1[e.ColumnIndex, e.RowIndex].Value == true) {
this.dataGridView1[1, e.RowIndex].Value = 100; } else {
this.dataGridView1[1, e.RowIndex].Value = 10; } } } this.toolStripStatusLabel1.Text = e.ColumnIndex.ToString() + "," + e.RowIndex.ToString(); }

 

转载于:https://www.cnblogs.com/Holmes-Jin/archive/2012/08/03/2621704.html

你可能感兴趣的文章
如何用Python做自动化特征工程
查看>>
C++线程同步之事件
查看>>
给毕业4年的待业者——要将学习继续下去
查看>>
XP下搭建 iphone 开发环境
查看>>
tomcat7的配置
查看>>
MFC之HTTP客户端应用程序
查看>>
Oracle 数据库监听配置
查看>>
php标题 栏目不显示<title>,DEDECMS专题列表页不显示title的解决方法
查看>>
matlab实现tophat,[问题] 多尺度tophat的实现问题
查看>>
java多线程发布订阅,多线程实现发布订阅升级版---遗留问题
查看>>
php think命令用不了,自定义 PHP think 命令无法在命令类文件里面使用 Db 类
查看>>
java注释跳转方法,Java自定义注解实现Router跳转
查看>>
499php,一笔画仙路 [499]第499章 神器的威力 最新章节无弹窗全文免费阅读 乐文阅读官网...
查看>>
zend怎么保存php,Zend Framework页面缓存实例
查看>>
oracle 并接去掉字符串,ORACLE删除字符-TRIM字符截取-substr查找字符-instr
查看>>
linux webrtc浏览器,WebRTC 浏览器支持
查看>>
[译文] 小提示:伪元素是子元素,吧。
查看>>
我答"编程为什么不用中文?": 中文API的意义和探索
查看>>
Swoft 2.0.5 更新,新增高效秒级定时任务、异常管理组件
查看>>
版本对比 两个版本号 一样长度
查看>>