老师,
我发现一个问题, 在我打开一个窗口操作完毕后,我需要切换到另一个窗口中,结果发现上一个窗口并没有被关闭, 当期窗口中因为存在CurrentChanged事件,会导致上一窗口中的某变化的字段会在当前的窗口中提示对应列不存在这个字段这样的报错, 后来我发现只要手工将上一窗口Close掉,问题就解决了,但从帮助文件中了解到,理论上只要打开新的窗口,原来的窗口应该就自动关闭了, 我检查窗口设计中确认无误, 
(窗口自动打开,已经设置了False)
如下所示:
上一操作的窗口是ProductBom,其中的主表为ProductBom,点击行后会提取其ProductID,然后进行筛选操作;
在我进入AssemblyTrackPlan窗口后,系统却使用ProductBom窗口中的这个字段ProductID运算,提示错误.
.NET Framework 版本:4.0.30319.42000
Foxtable 版本:2022.8.18.1
错误所在事件:ProductBom,CurrentChanged
详细错误信息:
Column 'ProductID' does not belong to table AssemblyTrackPlan.
未打开其它窗口时,直接打开该窗口是没有问题的.
谢谢!
正常情况下,打开第二个窗口,不会导致第一个窗口关闭的。
只有一种情况会,就是第一和第二个窗口都是主窗口类型,并且所有者表都是同一个表。
我这两个表确实都是主窗口类型,但所有者表不是同一个表
或者如何避免这个问题发生, 就是当一个窗口切换到另一窗口时, 不会出现上一窗体应用过的列在新的窗体中的检索不存在的错误,谢谢!
出错事件的完整代码发上来看看
出错提示的是AssemblyTrackPlan表没有ProductID列,和另外一个窗口表没有关系呀
由于出错是随机的,有时候又没有出错, 但有时候又冷不丁地冒出来了, 我将附件中的数据表尽量保留了,附件使用的是Win10 自带的7z压缩软件
我的操作是,从1进入工程与开发, 2点击"产品Bom",然后再点击(3)"NPI Summary", 此时就会跳出错误:
.NET Framework 版本:4.0.30319.42000
Foxtable 版本:2022.8.18.1
错误所在事件:ProductBom,CurrentChanged
详细错误信息:
Column 'ProductID' does not belong to table NewProjectsList.
本来想用截图,但由于提示文本字节太大,无法上传,这里只能这样了.
[此贴子已经被作者于2023/10/31 22:40:02编辑过]