1

嗨,我有一个 DataGridView,它的数据源有一个数据表。我有一个使用 DataTable.GetChanges() 方法的函数,当我在表单仍处于活动状态时运行该函数时,它运行良好;但是,我将该函数放在表单关闭事件中,以便在关闭表单时检查未保存的更改,但由于某种原因,当我从关闭方法运行它时,它总是返回没有任何更改。

我猜在我的函数运行以获取更改之前,数据源会在关闭时自动处理。

有没有办法阻止数据源被处理掉?我尝试在表单关闭事件中执行 e.Cancel=True 然后运行我的函数,但它仍然不起作用。

对此的任何帮助将不胜感激。

4

2 回答 2

1

你确定你在 Handles Me.FormClosing 事件中吗?我知道我在使用 OnFormClose 事件时遇到了同样的问题。我的程序使用 Me.FormClosing 工作正常我所做的就是检查

如果 dataset.has 发生变化,则 CallSaveLogic() 结束 if

数据表应该是一样的。

于 2014-08-28T19:05:21.137 回答
0

我想到了。事实证明,当我在 DataGrid 中输入一些内容而没有按 Enter 提交该编辑时,它才没有保存更改。它实际上与表单关闭无关。

于 2014-08-28T20:18:41.310 回答