none
DataGridView.SelectionChanged 事件问题 RRS feed

  • 问题

  • 通过鼠标或键盘交互式操作界面而触发, CurrentRow 为新行,结果预期。然而通过程序设置 CurrentCell 属性而触发, CurrentRow 却是老行,从而导致非预期结果。
    这可算是正常?我希望通过程序设置 CurrentCell 时,在事件处理器中得到新的当前行。


    箪食瓢饮随遇安,不求栋梁求参天。
    2011年8月10日 13:39

答案

  • 汗!手册上有:
    当您更改 CurrentCell 属性的值时,SelectionChanged 事件发生在 CurrentCellChanged 事件之前。此时访问 CurrentCell 属性的任何 SelectionChanged 事件处理程序都将获取其以前的值。 

    得用 CurrentCellChanged 事件才行,但这事件触发也太频繁了点。


    箪食瓢饮随遇安,不求栋梁求参天。
    2011年8月10日 15:35