同样的代码,有的项目启动很慢,不知道什么原因,只加载的表结构没有加载任何数据,通过消息框发现BeforeOpenProject执行之后,很长的时间才执行到AfterOpenProject,这是为什么?
因为你的表太多了。即使是空表,加载表结构以及表属性、列属性、表事件等相关设置,表一多自然就慢下来了。想不影响启动速度的话,就得考虑在窗体里面动态加载表,每启动一个窗体就加载相应的表。不过这样狐表菜单里面的表属性和列属性就不能直接用了,得自己用代码来实现加载表数据与加载相应的表属性与列属性设置。说多了就需要一个框架了。脱离Tables和DataTables直接使用窗体动态加载表以实现加快项目启动速度是有代价的。就看你愿意不愿意承受这样的代价了。
总结:如果想做大项目,不想项目功能越多,启动越慢,就得忍痛割舍帮助文档里面的方法,采用动态加载的方式。如果能说动狐爸能解决这个问题最好。