回答
最好的办法是使用Control.SuspendLayout方法,你已经开始,以填补你的按钮控制之前,比Control.ResumeLayout你完成
+1只有人能真正回答OP的问题(到目前为止,其他人对于他是否有一个好的设计或多或少的评论,应该在评论部分进行评论......) – marr75 2013-03-04 14:41:50
@ marr75 - 我同意但是这个**是一本教科书[XY-Problem](http://meta.stackexchange.com/questions/66377/what-is-the-xy-problem/66378#66378)。 – 2013-03-04 14:45:03
当然。质疑他的设计和询问更多信息对于评论部分来说都是完美的项目,尽管(如果他必须通过回答问题并回答问题,那么受访者的投资会明显更高)。 – marr75 2013-03-04 14:50:02
您可以尝试在加载控件之前暂停布局,然后再继续。这应该加快加载:SuspendLayout
下面是这可能被证明是有用的阅读链接:(TIPS改善的Wndows窗体应用程序性能) -
每个'Form1.Designer.cs'也显示如何使用它。 – 2013-03-04 14:37:55
这几乎是不可能的,你需要所有该按钮立即。
如果您正在设计用户界面,请将其分割为选项卡,其中选项卡表示UX逻辑组。
如果你不设计 UI,使用控制是不是一个好的选择,选择别的东西在屏幕上绘制,它会快很多。
有一些很好的提示后,在这里你可以通过加快应用程序。
http://devcomponents.com/blog/?p=361
这么说,我真的会提高人们对到底为什么你需要加载720个键的问题。您很可能只会使用表单上5%的可用控件。找出减少它们的好方法。
如果您想“隐藏”加载所有控件的过程,只需使用启动画面,以便用户可以看到应用程序正在加载,但在加载完成之前无法看到所有实际组件。
PS:考虑将组中的按钮分开,因为我需要在一个位置使用所有按钮(也许在选项卡中拆分?并在按下该选项卡时加载它们)好吧,考虑一下。
- 1. 需要建议AsyncTask对象创建
- 2. 创建对象时需要将对象ID分配给字段
- 3. 工厂对象创建需要其他对象的对象
- 4. Rails用param创建对象 - 不需要
- 5. RUn时间错误:需要对象
- 6. 查找对象需要多少时间?
- 7. 需要创建日期时间
- 8. 创建AMI需要很长时间
- 9. 需要帮助来创建时间槽
- 10. 在C#中按需创建对象#
- 11. 高效创建大量小C++对象的需要访问“全局”对象
- 12. 对象需要在对象C类
- 13. ActiveX无法创建对象:对象需要424错误
- 14. 为什么我的对象需要很长时间才能创建?
- 15. 为什么在VB6中创建新的Crystal Report对象需要很长时间?
- 16. 仅在需要时才创建Java对象?
- 17. 如何停止创建对象实例时,它不需要
- 18. 存储对象数组或在需要时创建?
- 19. 需要在创建时生成一个包含id的对象
- 20. 需要时动态创建子对象和数组
- 21. 创建C++对象
- 22. C++:创建对象
- 23. C# - 对象创建
- 24. 按需创建对象
- 25. C#:创建对象之间的强引用,不需要引用另一个对象
- 26. 创建对对象C++
- 27. scala对象的创建时间
- 28. 获取时间对象创建
- 29. Scala - 在创建对象时节省创建时间
- 30. 无论何时创建用户对象,也要创建UserInfo对象
你究竟在做什么需要720个按钮? – PhonicUK 2013-03-04 14:35:27
您不应该尝试减少创建一个按钮所需的时间。相反,减少按钮的数量。这看起来像是一个真正的设计缺陷。 – 2013-03-04 14:36:43
你在使用Forms还是WPF? – nvoigt 2013-03-04 14:37:23