winforms - 调整面板大小以适应 Windows 窗体中包含的元素

标签 winforms panel resize

我正在创建一个可折叠的面板元素,它本质上是一个带有按钮元素和按钮下方的面板元素的面板元素。单击该按钮会导致相邻面板具有 Visible = false .当子面板设置为不可见时,我想调整包含面板的大小。

我通过设置 Size 手动完成了此操作。属性是可见元素(按钮或按钮和子面板)的宽度和高度的总和。

我很想知道是否有办法强制调整包含面板的大小而无需手动调用 Size .

我想我正在寻找属性的倒数 Dock=Fill ,它会根据元素包含元素的大小自动调整元素的大小。

提前致谢。

最佳答案

怎么做:

panel1.Size = new Size(0, 0);
panel1.AutoSize = true;

然后不要改变可见性,而是这样做:
panel1.Controls.Remove(panel2);

当你想把它带回来时:
panel1.Controls.Add(panel2);

(panel1 是背板)

关于winforms - 调整面板大小以适应 Windows 窗体中包含的元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7575252/

相关文章:

ios - 在 iOS 中创建按钮面板

c# - 通过最大化按钮调整表单大小时未触发ResizeEnd事件?

javascript - 打开手机键盘时防止调整大小事件(JS)

c# - 从一开始就隐藏我的窗口?

asp.net - 在代码隐藏中将 CSS 类添加到面板

c# - 如何将数组的字符串复制到列表<string>?

c# - 如何检测 WinForms 面板是否滚动到末尾?

delphi - Delphi-TPaintBox-调整大小

c# - 当外部应用程序的窗口移动时移动窗口

winforms - 如何为具有 EF 数据源的多个报表重用一个 ReportViewer 控件?