再谈窗口Table与表事件
其实本节的内容,前面的章节都有介绍。
但可能是由于比较分散的原因,我们在技术支持过程中,还是经常会遇到客户提出类似这样的问题:窗口Table为什么没有事件?
所以这里再集中复述一遍。
窗口Table有四种类型,这四种Table有的没有表事件,有的有部分表事件,有的有全部表事件。
Normal型Table(正本)
没有任何表事件,但是会完全继承表属性中设置的事件代码。这是因为非副本的Normal型Table只是将原来的Table移到窗口中,例如对于订单表来说,不管是显示在主界面中,还是显示在窗口中,它始终都是Tables("订单"),它还是它,没有任何改变,只是出现在不同的地方而已。
Normal型Table(副本)
会完全继承表属性中设置的所有事件代码,但可以单独设置以下事件代码:
如果副本Table没有设置上图这些表事件,那么表属性中设置的这些事件代码对副本Table一样有效;如果你希望这些事件触发时,副本Table和正本Table有不一样的行为,那么就可以给副本Table单独设置这些表事件代码。
副本Table能够将这些常用表事件独立出来设置,会给大家的开发工作带来很大的便利。
SQLTable
SQLTable可以设置所有的表事件,这是理所当然的,因为它会生成一个全新的DataTable。
SQLQuery
SQLQuery同样可以设置所有的表事件,因为它也会生成一个全新的DataTable,它和SQLTable的差别,只是数据表和查询表的差别。