c# - 当窗体具有许多下拉列表控件时,C#.net 窗体调整大小缓慢

标签 c# .net winforms

我制作了一个带有许多下拉列表的 Windows 窗体,这些下拉列表放置在网格(不是数据网格)内,当我在所有这些选项中使用 anchor=left right top bottom 和 dock=fill 选项时,运行时表单调整大小变慢.

停靠和 anchor 选项有什么问题?

这是表单的普遍问题吗?使用 .net 组件和 Windows 窗体是普遍的缺点吗?

我没有在调整控件大小时处理任何自定义事件,因此问题出在 Microsoft 开发的控件上。我应该避免使用 dock=fill 吗?

最佳答案

这是正常的,因为每次调整大小都会消耗您的处理器 form forms resize table layout panel 这会强制调整大小和重新定位子控件(下拉菜单),因为设置了 anchor 属性。

有一个技巧可以避免在调整大小时让用户感到沮丧:

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

具体例子看这里:

Prevent window redraw when resizing c# windows forms

应该适合你。

关于c# - 当窗体具有许多下拉列表控件时,C#.net 窗体调整大小缓慢,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8763716/

相关文章:

c# - 服务堆栈 API - System.InvalidOperationException - ServiceStack.ServiceStackHost.OnEndRequest(IRequest 请求)

C# Azure DocumentDB 授权 key 权限

c# - 重构 LINQ 查询

c# - '1' 的无效参数值对 'index' 无效

c# - 我将如何在设计时设置我的 UserControl 的标签?

c# - 在C#中将位图图像保存为灰度图像

c# - 使用 NHibernate 获取不同的 IQueryable

c# - 使用 json.net 将 json 反序列化为 .net 对象

c# - 当我调试在设计模式下打开特定窗体的项目时,Visual Studio 崩溃。."Catastrophic failure"

winforms - 无法捕获 FormClosing 中抛出的异常