Rss & SiteMap
Foxtable(狐表) http://www.foxtable.com
Table的双重身份
窗口中的Table具备双重身份,使用不同身份时,类型不同,名称也不同。
作为控件
当作为窗口中的控件时,其类型为WinForm.Table,名称就是设计窗口时赋予的名称。
示例
Dim
作为Table
当作为普通的Table使用的时候,其类型自然是Table。
至于名称则要区分两种情况。
如果类型为Normal,且非副本,此时窗口并不会创建新的Table,只是将原来的Table移到窗口中显示,所以其名称自然就等于绑定的Table名称。
例如将订单表移到主窗口后,对其的调用还是和原来一样:
Tables("订单").AllowEdit = True
如果类型为Normal,且为副本,或者类型为SQLTable、SQLQuery,此时窗口会创建一个新的Table,此新Table的名称为:
窗口名称_控件名称
假定这个Table的名称为Table1,且在窗口1中,那么代码中必须使用“窗口1_Table1”的名称来调用此Table:
Tables
是清楚了~ , 不过用不同的方式加载了带有数据的窗口Table后,再用另一方式加载数据时经常还是会有:不存在“窗口_Tatlbe1”的提示或加载不了数据的情况。(指副本或Sql型的Table)
是不是在用不同方式加载数据前都要清除掉原来的Table?再来重建并加载数据? 这一点一直没搞明白。
Table的双重身份
窗口中的Table具备双重身份,使用不同身份时,类型不同,名称也不同。
作为控件
……
作为Table
……
与其说是Table有双重身份,还不如说在狐表中有两种不同的Table,一个是窗口控件,一个是表(可见的表)。
这本来就是两个完全不同的两个东西,而不是一个东西有双重身份,不知贺老师为什么非要让它叫同样的名字(两者都叫Table),给新用户容易造成混淆,增加不必要的麻烦。