日期:2014-05-18  浏览次数:21017 次

winform 判断datagridview 数据是否发生改变
因为form里面有多个datagridview 而只有一个按钮,我想实现的功能就是当第一个datagridview 的数据改变是保存第一个
ocnn = new OleDbConnection(connections);
  ocnn.Open();

  if ()//这里如何去判断datagridview1是否发生变化
  {
  DataTable dt = (DataTable)dgv_Data.DataSource;

  string sql = "select MaterielRegiser_Number as 货料编号,MaterielRegiser_Name as 货料名称,MaterielRegiser_Model as 规格型号,MaterielRegiser_Unit as 单位 from MIS_MaterielRegiser";
  oda = new OleDbDataAdapter(sql, ocnn);
  ocb = new OleDbCommandBuilder(oda);
  ocb.QuotePrefix = "[";
  ocb.QuoteSuffix = "]";

  oda.Update(dt);
  ocnn.Close();
  }
else if()//第二个发生变化保存第二个{
//……
}


------解决方案--------------------
你用DataSet的HasChanges不行吗
------解决方案--------------------
探讨

引用:
引用:

引用:
在事件CellValueChanged里面写吧
我只是想在button_click事件里判断一下,不用那么麻烦吧~

关键是你是在捕获dgv的改变啊,在DT捕获改变没用啊
你可以从CellValueChanged传一个值到button_c……