如何在C#中将数据更新在DataGrid中!

yus001 2003-10-17 03:38:50
有两个或多个窗体,其中一个窗体上放置DataGrid控件,对数据的添加、修改或删除在另外的窗体,当数据改变后(且窗口不关闭),DataGrid中显示出完整的数据,包括更改与没有更改的数据?怎样实现?
...全文
30 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
yus001 2003-10-24
  • 打赏
  • 举报
回复
我说的是在当前页面进行修改、添加或删除,在另一页面显示修改后的所有数据(包括没有修改的),且当前页面仍为活动页面
xingxinglzg 2003-10-22
  • 打赏
  • 举报
回复
可以实现的,你在当前页面对数据的添加、修改或删除绑定。你当前的页面就会显示为修改后的数据,而另一页面则为修改前的页面
amoxicillin1030 2003-10-22
  • 打赏
  • 举报
回复
if(ds.HasChanges())
{
da.Update(ds,"tablename");
}
ds.Tables["tablename"].AcceptChanges();
houlinghouling 2003-10-22
  • 打赏
  • 举报
回复
忘说了,一定要DATASOURCE是你修改后的
houlinghouling 2003-10-22
  • 打赏
  • 举报
回复
你在窗体1上修改的数据存到一DATASET中,在你关闭该窗体的时候去出发DATAGRID重新DATABING。
yus001 2003-10-22
  • 打赏
  • 举报
回复
发上的方法我都用过,不能实现更新
yhcs 2003-10-17
  • 打赏
  • 举报
回复
winform,两个窗体。parentFrm childFrm
childFrm 一个确定(譬如保存)按钮,对应DialogResult属性的值为OK
parentFrm上一个dataGrid,一个新增按钮btnAddnew。单击按钮事件:

private void btnAddnew_Click()
{
childFrm frm=new childFrm();
DialogResult result=frm.ShowDialog(this);

if(result==DialogResult.OK) //看你childFrm上按钮的设置。
{
//查询结果重新绑定dataGrid
DataSet objDs=new DataSet();
sqlDataAdapter.Fill(objDs)
dataGrid.DataSoure=objDs.Table[0].DefaultView;
}
}
gshope 2003-10-17
  • 打赏
  • 举报
回复
更正一下,更改的和没有更改的数据要分别绑定到两个DataGrid
gshope 2003-10-17
  • 打赏
  • 举报
回复
对数据的修改是在DataSet里实现的,这就不说了,然后,
假设ds就是目前的DataSet,
DataSet dsChanges = ds.GetChanges()
DataView dv = dsChanges.Tables["Employees"].DefaultView;
dv.RowStateFilter=DataViewRowState.Added|DataViewRowState.ModifiedOriginal|DataViewRowState.Deleted;
grid1.DataSource = dv;
这时显示所有更改过的数据,没有更改的数据直接绑定ds到grid1就可以了。

110,499

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧