直接在gridview中修改,然后点击修改按钮更新内容,问题是:
_CellEndEdit事件中取值,(试过leave,等等事件,)发现取得的值都是改动之前的,只有在改动某个单元格后,必须用鼠标在旁边点击一下,才能取得修改后的值.
如果修改完毕后直接点击修改按钮,就不可以.
请指教,谢谢!

解决方案 »

  1.   

    http://weekzero.cnblogs.com/articles/401231.html
      

  2.   

    在修改按键中调用一下EndEdit()方法
      

  3.   

    在修改按键中调用一下EndEdit()方法
    这个我也考虑了,因为参数e,无法调用.
      

  4.   

    (object sender, DataGridViewCellValidatingEventArgs e)
    因为参数e的原因,无法调用.用的winform,不是webform
      

  5.   

     this.BindingContext[datagridview绑定到的datatable].EndCurrentEdit();
    用不着参数e啊
      

  6.   

    在“修改”按钮的单击事件中,你可以通过“DataGridViewSelectedRowCollection selected_rows = this.dataGridView.SelectedRows;”来获得你当前选中的行,然后通过update去更新你的数据到数据库中,最后再显示到DataGridView中时需要重新连接获取新数据,再dataGridView.Refresh();
      

  7.   

    有修改按钮用_CellEndEdit事件做什么??
    在修改按钮里写Grid名.EndEdit();然后再取值就可以了。
      

  8.   

    DataGridViewSelectedRowCollection selected_rows = this.dataGridView.SelectedRows;
    用这种方法在修改按钮里写Grid名.EndEdit();然后再取值,结果还是不行,明明修改了,结果还是没有变!
      

  9.   

    今天再次测试,结果还是那样,
    鼠标对gridview中的选择框进行选择,然后点击另一个按钮,为什么先执行的是按钮点击动作,并且此时取得的gridview中的选择框的值居然是选择以前的!
      

  10.   

    在CellValidating事件里 用e.FormattedValue
    取的是正在编辑中的值