如果处理SelectionChanged事件,DataGridView CellContentClick事件会丢失?

时间:2013-12-13 17:50:42

标签: .net events datagridview event-handling c++-cli

我在Win7上使用C ++ / CLI .NET 4.5。我用DataGridView开发一个控件。用户无法编辑单元格,也无法手动添加行。

我需要捕获/处理 SelectionChanged 事件,所以我为它添加了一个处理程序。我还需要捕获/处理 CellContentClick 事件,所以我也为它添加了处理程序。如果我点击一个单元格的内容,当然选择会改变,但我也想抓住点击事件。永远不会调用 CellContentClick 的处理程序。

  • 如果我删除了 SelectionChanged 处理程序,则会根据需要捕获 CellContentClick

  • 如果我将return作为 SelectionChanged 处理程序的第一行,则 CellContentClick 永远不会被捕获。

    < / LI>

看起来,如果选择的处理程序禁止触发点击的事件????

有什么想法吗?如果您需要有关DataGridView设置的更多信息,请与我们联系。

谢谢!

2 个答案:

答案 0 :(得分:1)

  1. Hans Passant适合 CellClick 。我将 CellContentClick 更改为 CellClick

  2. 有一个&#34;错误&#34;使用调试器,因为当我在 SelectionChanged 事件中放置断点时,不会捕获 CellClick 。当我删除断点时, CellClick 就会被捕获。这误导了我。我正在使用VS2012.4。

  3. 谢谢!

答案 1 :(得分:-1)

我读到这可能是工作室的错误,但这是不正确的。它不开火期。测试一下,亲自看看。

如果单击同一行,则将触发cellclicked事件。单击上一行或下一行中的单元格,将触发选择的更改,但不会触发cellclicked事件。谢谢M $。