Office中国论坛/Access中国论坛

标题: 更改组合框行来源=重新查询子窗体? [打印本页]

作者: t小宝    时间: 2014-6-28 14:35
标题: 更改组合框行来源=重新查询子窗体?
无名版友遇到一个奇怪的问题,有个组合框老是不听使唤,你改了它的值然后它又自动改回来,经排查是子窗体的成为当前事件改变了它的值。
然后再排查是什么原因引起子窗体的成为当前事件,根据经验,重新查询子窗体记录源时是会引起子窗体的成为当前事件的。
但奇怪的是在窗体上并没有发现重新查询子窗体的代码,或者其它可能会激发子窗体成为当前事件的代码!
唯一的发现是更改组合框值时根据输入的值用代码改变了组合框的行来源,难道改变一个组合框的行来源会引起重新查询子窗体?
最后自己做了一个实例来测试,发现确实如此:改变主窗体上一个组合框的行来源会重新查询子窗体!
特此给可能遇到类似问题的版友提个醒。


作者: jasonjiang9999    时间: 2014-6-28 19:28
本帖最后由 jasonjiang9999 于 2014-6-28 19:29 编辑

这个问题的原因在于更改行来源后虽然不会引起重新查询数据源..但是会引起窗体重算.  仔细观察状态栏..你可以看到"正在计算...."的字样.

当遇到子窗体的时候.如果子窗体设置了主子链接字段, 会引起子窗体控件重新查询数据源.  如果去掉主子链接字段..就不会有这个情况了..


作者: t小宝    时间: 2014-6-28 22:07
jasonjiang9999 发表于 2014-6-28 19:28
这个问题的原因在于更改行来源后虽然不会引起重新查询数据源..但是会引起窗体重算.  仔细观察状态栏..你可 ...

观察果然很细
作者: purplerose    时间: 2015-8-28 21:15
实用型   保存
作者: ardu95    时间: 2016-10-11 06:39
新生学习一下,保存




欢迎光临 Office中国论坛/Access中国论坛 (http://www.office-cn.net/) Powered by Discuz! X3.3