Foxtable(狐表)用户栏目专家坐堂 → loadchildren的问题反馈


  共有5889人关注过本帖树形打印复制链接

主题:loadchildren的问题反馈

帅哥哟,离线,有人找我吗?
狐狸爸爸
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47522 积分:251557 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2022/5/31 14:32:00 [显示全部帖子]

你把第二个按钮的代码改为:

DataTables("表B").LoadFilter = "pid=2"
DataTables("表B").Load
MessageBox.Show(DataTables("表B").LoadFilter)

可以看到你设置的条件确实生效了,而且确实只加载了pid为2行,只是单击对话框的确定按钮之后,才开始执行LoadChidren,所以看起来子表条件没有生效。

所以这个不是Loadchildren问题,是代码代码执行顺序的问题:

AfterLoad事件并不会在Load执行完毕之后马上触发,而是等所有代码执行完毕,系统空闲后才触发

这个执行顺序目前时不能调整的,首先当时这么设计肯定有原因,其次调整了可能会衍生出其他问题。

所以特殊情况,就不要在AfterLoad事件执行LoadChidren了,父表的load和loadchildren都放在同一个按钮吧,确保会按预期的顺序执行。
[此贴子已经被作者于2022/5/31 15:00:00编辑过]

 回到顶部