我删除DataGridView一行数据后 重新绑定DataGridView 结果显示在界面上是 未删除
但实际上数据库中已经删除这条数据了 
当我把该窗口关闭后再打开 则
显示又是正常的 还有就是我如果删除多行的时候 重新绑定DataGridView 结果显示在界面上最后选择要删除的一行未删除
还是在界面上显示 
但实际上数据库中已经删除这条数据了 
当我把该窗口关闭后再打开 则
显示又是正常的 

解决方案 »

  1.   

    恩,在删除后重新 Bind 一下
      

  2.   

    每次修改之后我都会
     dataGridView1.DataSource=null;
    dataGridView1.DataSource=source;
      

  3.   

    如果只是删除,没有做修改的话,不用重新绑定
    比如你的datagridview绑定的是datatable,你删除的时候把datatable里面对应的行删除掉,datagridview就会对应的行也会删除掉了,这样不用重新查询数据库再绑定,性能上应该会快一些 
      

  4.   

    看楼主的数据源是什么了。如果直接绑定的是datatable,那么在datatable里删除后,gradview就会自动更新现实的,不用人工干预。
      

  5.   

    不知道LZ是怎么搞的啊,数据源是个 什么东西,DataTable吗.....datagridview上的数据是通过循环添加进去的吗如果是用DataSource 绑定的数据源,LZ是根本删除不了datagridview 中的数据从LZ的说法,应该不是用DataSource绑定的你只移除了Datagridview中的数据,没有移除数据源中的相应数据移除Datagridview中的数据时,同时执行了一条删除的SQL语句删除数据库中的数据,有重新绑定原来内存的数据源删除Datagridview中的数据 != 删除数据源中的数据要么重新从数据库中查询一次,得到一个新的数据源-----数据更新的快,更新频繁 要用这个了,因为要给用户显示最新数据要么把内存中原来的数据源相应的数据移除掉----- 数据更新的少 ,可以提高数据重复利用,减少系统性能消耗