C#对象的创建需要时间

本文关键字:时间 创建 对象 | 更新日期: 2023-09-27 18:02:01

在运行时,我需要在应用程序中创建大约720个按钮或标签。这里的问题是,当我启动我的应用程序或使其(重新(可见时,我可以看到正在加载的按钮。

我该如何避免或加快速度?

C#对象的创建需要时间

最好的方法是在开始用按钮填充控件之前使用Control.SuspendLayout方法,而不是在完成之后使用Control.ResumeLayout

您可以尝试在加载控件之前暂停布局,然后再继续。这应该会加快加载速度:SuspendLayout

这里有一个链接,可能证明有用的阅读:(提示提高wnwindows窗体应用程序的性能(-

Winforms性能

您几乎不可能同时需要所有按钮。

如果你在设计用户界面,把它拆分成选项卡,其中选项卡代表用户体验逻辑组。

如果你不是设计UI,使用控件不是一个好的选择,那么选择其他东西来在屏幕上绘制会更快。

这里有一些很好的技巧可以用来加快应用程序的速度。

http://devcomponents.com/blog/?p=361

也就是说,我真的会提出一个问题,为什么你需要加载720个按钮。你很有可能只使用表单上可用控件的5%。找到一个减少控件的好方法。

如果你想"隐藏"加载所有控件的过程,只需使用一个启动屏幕,这样用户就可以看到应用程序正在加载,但在加载完成之前无法看到所有实际组件。

PS:考虑将这些按钮分组,因为我m sure you don不需要将所有按钮都放在一个地方(可能会拆分为选项卡?并在按下选项卡时加载它们?(好吧,想想看。