Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/delphi/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Delphi 插入新行后未刷新Developer Express网格详细视图_Delphi_Devexpress_Quantumgrid - Fatal编程技术网

Delphi 插入新行后未刷新Developer Express网格详细视图

Delphi 插入新行后未刷新Developer Express网格详细视图,delphi,devexpress,quantumgrid,Delphi,Devexpress,Quantumgrid,我感到沮丧和绝望。 我无法理解为什么不使用新插入行的数据更新详图视图 我有一个主视图和一个详细的网格视图。主数据集是一个TADOQuery,而详细数据集是一个TADOTable,两者都连接到SQL Server。数据源连接正常,主/详细键设置正常 我可以在两个视图中编辑/删除/插入 我在两个视图中都使用NewItemRow。当我在主视图中插入新行时,一离开NewItemRow,视图中就会添加一个新行。但这并不是在细节视图中发生的。实际上插入了数据,触发了数据集事件,但在视图本身中没有添加新行。刷

我感到沮丧和绝望。 我无法理解为什么不使用新插入行的数据更新详图视图

我有一个主视图和一个详细的网格视图。主数据集是一个TADOQuery,而详细数据集是一个TADOTable,两者都连接到SQL Server。数据源连接正常,主/详细键设置正常

我可以在两个视图中编辑/删除/插入

我在两个视图中都使用NewItemRow。当我在主视图中插入新行时,一离开NewItemRow,视图中就会添加一个新行。但这并不是在细节视图中发生的。实际上插入了数据,触发了数据集事件,但在视图本身中没有添加新行。刷新视图的唯一方法是取消激活并重新激活数据源,但我认为这不是一个真正的解决方案

为什么会这样?我能做些什么来修复它


事先非常感谢

大多数情况下,在网格的DataController中打开Sync属性时,这样的错误都会被消除


但是,我建议您使用最新版本的devex。他们真的做了很多工作来消除这样令人烦恼的错误。

如果数据确实插入(到数据库?)您所说的
视图本身没有添加新行是什么意思?
?在NewItemRow失去焦点并变为空后,插入的数据不会显示在视图中。但它们已被发布到底层数据集。但是用户看不到它们。直到现在我才意识到这是一个devexpress网格问题(我没有看到标签)。插入新行前后是否使用BeginEdit、EndEdit?否。新行自动使用它们,否?如果没有,哪个事件适合调用EndEdit?您是否尝试过在数据集上使用Insert或Append方法?您应该将数据添加到基础数据集中,并让控件自行更新。