检测用户何时完成数据网格视图中的单元格编辑

时间:2014-04-23 07:17:14

标签: vb.net datagridview

我正在使用DataGridView1.CellEndEdit来检测用户何时完成编辑单元格。

在我的节目中,我这样做:

  • 使用绑定源填充Datagridview
  • 使用bindingsource过滤器进行过滤
  • 按字母顺序排列第一列
  • 编辑单元格
  • 在数据库中编辑已编辑的值

问题是:当我完成时,CellEndEdit被触发并且单元格执行此操作:

  • 将新值写入Datagridview
  • 根据单元格的新值刷新行顺序并更新bindingsource过滤器
  • Fire CellEndEdit

对我来说这是一个问题,因为我需要读取行的每个单元格的内容,以便更新数据库,一旦获得新值,它就会被移动到未知位置或隐藏,因为它不符合过滤条件了,因此如果我在读取行的值之前读取的行与我正在寻找的行无关。

有没有办法从CellEndEdit子中获取包含我刚刚编辑的单元格的整行的值?

2 个答案:

答案 0 :(得分:1)

CellEndEdit事件提供DataGridViewCellEventArgs个参数,其中包含RowIndex

答案 1 :(得分:1)

通过添加KeyUp事件处理程序并将行的每个单元格存储在每个keyup事件的变量中来解决。