private DataSet ds;
private OleDbDataAdapter oleda;
private ExDatagrid exDatagrid1;
// 表格exDatagrid1与ds绑定,现在,我想直接在表格exDatagrid1中增加、修改、删除数据,再在datatable 的rowchanged.rowdeled中触发事件,执行oleda.update,来更新表格中的数据到数据库中,但现在有个问题是,我在表格中增加了数据,触发rowchanged,但ds.haschange()为假表明无变化数据,不明白请大家指点;;
private void MakeTable()
{
   using(OleDbConnection mscon=new OleDbConnection(Access_strcon))
   {
string Sqlstr="select * from 处方明细";
using(OleDbCommand mscom=new OleDbCommand(Sqlstr,mscon))
{     
   oleda=new OleDbDataAdapter();
   oleda.SelectCommand=mscom;
            oleda.MissingSchemaAction=MissingSchemaAction.AddWithKey; 
            oleDbCommandBuilder oledacom=new OleDbCommandBuilder(oleda);               
            ds=new DataSet();
            oleda.Fill(ds,"处方明细");
            ds.Tables[0].RowChanged+=new DataRowChangeEventHandler(Row_Changed);
            exDatagrid1.SetDataBinding(ds,"处方明细");
}
}
}
private  void Row_Changed( object sender, DataRowChangeEventArgs e )
{   
if(ds.HasChanges())//一直为假,但我已在datagrid中输入了数据
    {
ds.AcceptChanges();
oleda.Update(ds,"处方明细");
MessageBox.Show("成功!");
     }
}