【发布时间】:2014-12-30 06:07:34
【问题描述】:
当且仅当特定单元格的值发生更改并且焦点已转移到另一个单元格时,我才需要执行一些逻辑。仅当值已更改且焦点已更改时才需要执行逻辑......即用户已完成对单元格的编辑并继续前进。它不应该仅仅通过更改单元格焦点来关闭......只有在值发生更改的情况下。我一直在寻找和尝试事件,但到目前为止都没有成功。
请注意...这是一个以编程方式填充的未绑定网格视图。我本来希望使用传统的绑定网格视图,但由于我们现有代码的编写方式,这是我必须使用的。
这是我尝试过的......
DataGridView.CellValidated “在单元格完成验证后发生。” 当我更改单元格值时会触发...然后每次更改单元格焦点时都会触发,无论我是否在第一次之后实际更改了单元格值。不符合我的需求,因为每当我移动焦点时它都会被调用......即使值没有变化。
DataGridView.CellValidating “当单元格失去输入焦点时发生,启用内容验证。” 似乎也没有做我需要的。
DataGridView.CellValueChanged “当单元格的值更改时发生。” 每次我改变值时都会触发......在转移焦点之前。对我的目的也没有用。
我真的不知道我是否使用了正确的事件,或者没有在某处设置属性,或者没有调用某个方法来更改网格视图的状态。帮助将不胜感激。
谢谢, 约翰
【问题讨论】:
-
也许有人可以告诉我为什么这个问题被否决了,这样我就不会再犯我在这里犯的任何错误了?
标签: c# winforms events datagridview