日期:2014-05-19  浏览次数:20907 次

动态创建控件遇到的怪问题,控件多了,速度慢的厉害!请你帮我指招儿!
我在Windows窗体应用程序中,需要动态生成几十个控件,现在生成是没有问题,问题是太慢啦!想请各位谈谈各自的认识!
谢谢!

------解决方案--------------------
要看是什么控件,如果是LABLE、TEXTBOX的话生成100个也不慢,不过要记得生成控件时挂起布局用SuspendLayout

语法
C#
public void SuspendLayout ()

备注
控件的布局逻辑被挂起,直到调用 ResumeLayout 方法为止。

当调整控件的多个属性时,将先后使用 SuspendLayout 和 ResumeLayout 方法取消多个 Layout 事件。例如,通常先调用 SuspendLayout 方法,然后设置控件的 Size、Location、Anchor 或 Dock 属性,最后调用 ResumeLayout 方法以使更改生效。

SuspendLayout 调用必须等于零,然后才能成功调用 ResumeLayout。

注意
将多个控件添加到父控件时,建议在初始化要添加的控件之前调用 SuspendLayout 方法。将控件添加到父控件之后,调用 ResumeLayout 方法。这样就可以提高带有许多控件的应用程序的性能。