DataGridView / DataSet更新

时间:2008-11-18 16:15:27

标签: c# datagridview

我在将DataGridView中的新行保存回数据库时遇到问题。简言之,将

1)我使用SqlDataAdapter填充DataSet中的DataTable。

2)DataTable是网格视图的数据源。

3)如果用户点击DataGridView底部的空白“新行”,我会捕获RowEnter事件中新的空行并用数据填充它。数据显示在DataGridView中。

4)当我在SqlDataAdapter上调用Update时,新数据将消失,并且不会保存到数据库中。

在第3步和第3步之间4我已经尝试过DataGrid.EndEdit,DataSet.AcceptChanges,BindingContext [...]。EndCurrentEdit以及其他一些没有成功的事情。

如何将更改从DataGridView传播回DataSet?

而且,如果我被允许发短信,为什么要找到一个这么明显的简单例子呢?

2 个答案:

答案 0 :(得分:1)

我在这方面取得了成功:

http://msdn.microsoft.com/en-us/library/fbk67b6z.aspx

我仍然认为在文档中找到答案太难了。

答案 1 :(得分:1)

根据this,AcceptChanges可能是问题。

引用:

嗨,

  
    

更新前无法执行AcceptChanges。 AcceptChanges使RowState返回Unchanged(添加的行应该是添加的RowState值,更新的行应该是Modified RowState值。)

         

Update语句应该为您调用AcceptChanges

  

请注意,我在MSDN的任何地方都没有找到它。

您是否会从需要Google查询自己的文档的公司购买搜索引擎?