我的问题是:我的DataGridView的数据源是绑定的DataTable,那么我更改DataGridView的内容时DataTable会改变么?我现在是想通过DataTable判断我对DataGridView进行的更改,可以么?

解决方案 »

  1.   

    DataGridView的数据源是绑定的DataTable   DataTable这个里面存放的是查询方法
    DataTable判断我对DataGridView进行的更改    DataTable这个里面存放的是修改方法, 怎么能一样了,
      

  2.   

    是不是我要实现我要的功能的话还要将DataGridView转换为DataTable呢?等答案啊……
      

  3.   

    重新绑定就是重新将修改后的datagridview的值绑定到datatable中
      

  4.   

    如果LZ只是想判断datagridview是否被改变可以这样在这个事件中通过改变一个全局变量的值来标识值是否已经被改变private void grd_CurrentCellDirtyStateChanged(object sender, EventArgs e)  
    {  
    if(grd.IsCurrentCellDirty) 

         grd.CommitEdit(DataGridViewDataErrorContexts.Commit);  
    }
    }
      

  5.   

    GridView里的数据改变以后你如果要使数据库的数据也改变,肯定要对数据库进行更新操作,更新数据库以后相同的语句查询出得datatable肯定也就不同了,不知道你想知道的是不是这个。
      

  6.   

    DataTable是不会改变的,除非你直接改动了数据库的内容。 DataTable dt = this.GetQuXianTu(this.chZhanDian.Text.Trim(), StartTime, EndTime).Tables[0];
     this.chart1.DataSource = dt.DefaultView;
      

  7.   

    如果说是重新绑定
    DataTable dt=(DataTable)dgv.DataSource();//这样就OK了撒
    然后在和以前的DataTable做比较
      

  8.   

    this.GetQuXianTu(this.chZhanDian.Text.Trim(), StartTime, EndTime).Tables[0];
    这个就是直接绑定数据库的方法。也就是说只有当数据库的内容改动后DATATABLE就会重新绑定数据库
      

  9.   

    不是这个,我就是想通过DataTable实现对数据库的批量更新……
      

  10.   

    如果我用一个全局的DataTable,绑定数据源的时候是它,修改后重新绑定的还是它,那么它会记录下改变的内容么?就是说可以判断前面和后面的不同么?
      

  11.   

    你改datagridview是不能改变datatable的,你要怎么更新数据库呢,要更新数据库必须使用到sql更新语句啊,只是说你批量更新的话条件不一样而已。