Mir*_*ine -1 .net c# multithreading loading winforms
我的表格有超过200个控件!加载表单并绑定控件大约需要7秒钟.
我用一些性能分析器跟踪了应用程序,但除了构造函数之外,我没有找到任何带有HOT标志的东西.
我想知道是否可以像backgroundWorker(多线程)一样调用InitializeComponent方法!
不,线程不会帮助你.需要在UI线程上创建控件才能使应用程序正常工作.
唯一合理的方法是查看在创建表单时是否确实需要创建所有 200个控件,或者如果您可以"按需"加载它们.
在不知道你的应用程序的情况下,不可能提供更具体的指导,但是你可能会遇到并非所有控件都在同时使用的情况,而是存在某种分页.如果是这种情况,则可以将每个"页面"制作成用户控件,以便您可以根据需要加载和卸载页面.