如何使用GetChanges()? 如何使用DataSet.GetChanges()或者 DataTable.Getchanges()?我把他们绑定到DataGrid上,对DataGrid进行修改,然后调用GetChanges(),为什么返回的是null? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 先调用一下DataGrid.EndEdit()方法,再调用DataSet.GetChanges()或者 DataTable.Getchanges(). 对datagrid修改不会改变dataset中的值 我把DataGrid绑定在DataSet上了 datagrid1.DataSource = ds;//数据集datagrid1.DataMember = "dtName";//表名//....在datagrid中修改数据if (ds.HasChanges == true)//有数据修改if (ds.GetChanges()!=null)//有数据修改if (dt.GetChanges()!=null)//有数据修改 你先要确定你在grid中修改的东西存入到缓存中,比如你录入了一行资料,换一下行. 对GRID 修改 并不会改变 DataSet的值。 在對DADESET裏面的紀錄進行修改,刪除的操作后,用AcceptChanges Dim oDR As DataRow oDR.AcceptChanges() w为什么对GRID 修改 并不会改变 DataSet的值? 这是我的代码:各位帮看看 加载页面时: public 构造函数() { // // Windows 窗体设计器支持所必需的 // InitializeComponent(); // // TODO: 在 InitializeComponent 调用后添加任何构造函数代码 // this.sqlSelectCommand1.CommandText=this.strSelect; this.sqlSelectCommand1.Connection=link.GetCon(); this.da.SelectCommand=this.sqlSelectCommand1; da.Fill(this.ds); SqlCommandBuilder sqlCb=new SqlCommandBuilder(da); GridStateContrl();//定义样式 this.dgd_Sld.DataSource=ds; this.dgd_Sld.DataMember=ds.Tables[0].TableName; }rivate void toolBar1_ButtonClick(object sender, System.Windows.Forms.ToolBarButtonClickEventArgs e) { if(e.Button.ToolTipText=="保存") { ds.Tables[0].AcceptChanges(); if(this.ds.GetChanges()!=null) { //this.tempTable da.Update(ds,ds.Tables[0].TableName); } if(this.ds.HasChanges()==true) { da.Update(ds,ds.Tables[0].TableName); } } if(e.Button.ToolTipText=="退出") { this.Close(); } } /*在保存前千万不能ds.Tables[0].AcceptChanges();这样所以数据行都变成UnChanged了,所以把这一句去掉;保存成功了后,在执行这一句*/ private void toolBar1_ButtonClick(object sender, System.Windows.Forms.ToolBarButtonClickEventArgs e) { if(e.Button.ToolTipText=="保存") { //注释ds.Tables[0].AcceptChanges(); if(this.ds.GetChanges()!=null) { //this.tempTable da.Update(ds,ds.Tables[0].TableName); } if(this.ds.HasChanges()==true) { da.Update(ds,ds.Tables[0].TableName); }ds.Tables[0].AcceptChanges(); } if(e.Button.ToolTipText=="退出") { this.Close(); } } 可是 现在的问题是 我得到的 this.ds.HasChanges()!=true ,而且this.ds.GetChanges()==null 可是 现在的问题是 我得到的 this.ds.HasChanges()!=true ,而且this.ds.GetChanges()==null 怎么用textbox控件控制复制richtextbox中文本条数 如何统一设定第三方控件的属性值 纯C#类编写的定时扫描数据库方法 怎么把DATASET中的数据插入到数据库另一个表中 GridView中的全选和反选 在Win中,怎样把DataGrid中的某一列类型设成RadioButton类型??? c#中线程莫名其妙stopped了!!! 求推荐一个服务器 c# 调用C++写的接口函数,用到了委托,结果老出现上面的问题,请大家帮帮忙,急!! C#程序如何与USB接口通信 [求助]制作共享软件的注册码 救急,怎样才能获取当前状态下dataGrid中各列的宽度(在线等)
datagrid1.DataMember = "dtName";//表名//....在datagrid中修改数据if (ds.HasChanges == true)//有数据修改
if (ds.GetChanges()!=null)//有数据修改if (dt.GetChanges()!=null)//有数据修改
Dim oDR As DataRow
oDR.AcceptChanges()
加载页面时:
public 构造函数()
{
//
// Windows 窗体设计器支持所必需的
//
InitializeComponent();
//
// TODO: 在 InitializeComponent 调用后添加任何构造函数代码
// this.sqlSelectCommand1.CommandText=this.strSelect;
this.sqlSelectCommand1.Connection=link.GetCon(); this.da.SelectCommand=this.sqlSelectCommand1;
da.Fill(this.ds);
SqlCommandBuilder sqlCb=new SqlCommandBuilder(da);
GridStateContrl();//定义样式
this.dgd_Sld.DataSource=ds;
this.dgd_Sld.DataMember=ds.Tables[0].TableName;
}
rivate void toolBar1_ButtonClick(object sender, System.Windows.Forms.ToolBarButtonClickEventArgs e)
{
if(e.Button.ToolTipText=="保存")
{ ds.Tables[0].AcceptChanges();
if(this.ds.GetChanges()!=null)
{
//this.tempTable
da.Update(ds,ds.Tables[0].TableName);
}
if(this.ds.HasChanges()==true)
{
da.Update(ds,ds.Tables[0].TableName);
}
}
if(e.Button.ToolTipText=="退出")
{
this.Close();
}
}
这样所以数据行都变成UnChanged了,所以把这一句去掉;
保存成功了后,在执行这一句*/
{
if(e.Button.ToolTipText=="保存")
{ //注释ds.Tables[0].AcceptChanges();
if(this.ds.GetChanges()!=null)
{
//this.tempTable
da.Update(ds,ds.Tables[0].TableName);
}
if(this.ds.HasChanges()==true)
{
da.Update(ds,ds.Tables[0].TableName);
}
ds.Tables[0].AcceptChanges();
}
if(e.Button.ToolTipText=="退出")
{
this.Close();
}
}