当表单有许多下拉列表控件时,C#.net窗体中的缓慢forms会resize

我创建了一个带有许多下拉列表的窗体,它放在一个网格(不是数据网格)中,当我在所有这些窗口中使用anchor = left right top bottom和dock = fill选项时,表单resize在运行时变慢。

dock和anchor选项有什么问题?

这是forms的一般问题吗? 使用.net组件和Windows窗体是一般的缺点吗?

我没有在控件resize上处理任何自定义事件,所以问题是关于Microsoft开发的控件。 我应该避免使用dock = fill吗?

它正常消耗你的处理器,因为在每个resize的移动formformsresizetable layout panel ,强制resize和重新定位子控件(下拉列表),因为有anchor属性设置。

有一个技巧可以避免在resize时为用户造成挫败感:

BeginResize()EndResize()事件处理程序上使用SuspendLayout()ResumeLayout()

看这里具体的例子:

调整c#窗体大小时防止窗口重绘

应该适合你。