最近FoaxTable更新频繁,感觉它越来越强大了,激起我重回FoxTable进行开发的欲望。
在探索了加载树工作方式后,觉得有些问题值得狐友们大家来讨论。
问题现象是:当我们在加载树节点间来回双击时,对应的DataTable的记录就重复清空、加载。白白消耗了带宽资源。
以狐表提供的范例《动态加载演示》为例,
1、当双击PD01/CS01节点时,DataTables("订单")加载了4条记录,
2、接着双击PD01/CS02节点时,DataTables("订单")加载了13条记录。
应该说,这个结果是正确的。
3、但当我们重新双击PD01/CS01节点时,DataTables("订单")重新加载了4条记录。
此时要商榷的议题来了:CS01的记录在第一次双击时已经加载,但由于我们的第二次双击,CS01的记录在DataTable中没有保存,
造成第三次双击时,又加载了一次(非常遗憾的是,此时又将CS02的数据抛弃了)。
这种现象,成了现实版的“黑熊掰玉米”。
为此,是否可以将加载树与筛选树结合,大致的意思是:每次在加载树的节点之间切换时,DataTable中的记录是逐渐增加的(加法效应),而在对应的Table中,利用其筛选的能力,只显示对应的记录(减法效应)。
还是以《动态加载演示》为例:
1、当双击PD01/CS01节点时,DataTables("订单")加载了4条记录,此时Tables("订单")中也是CS01的4条记录;
2、接着双击PD01/CS02节点时,DataTables("订单")加载了13条记录,总记录数为17条记录(4+13),但在Tables("订单")中显示的是CS02的13条记录;
3、再次双击PD01/CS01节点时,DataTables("订单")不必再加载记录,仍为17条记录,而在但在Tables("订单")中显示的是CS01的4条记录;
以上观点,谨抛砖引玉,愿FoxTable越来越好。
[此贴子已经被作者于2014-8-14 0:46:55编辑过]