【问题标题】:resize forms based on controls visibility根据控件可见性调整表单大小
【发布时间】:2013-03-04 18:44:05
【问题描述】:

我正在开发 .net win 表单应用程序。我有三个控件放在一个表单中。这些控件根据条件可见。当这些控件不可见时,我会在表单底部看到一个空白区域。我想在控件不可见时消除空格,并且在控件可见时表单大小应自动调整大小。我应该使用哪些选项/设置/代码?

【问题讨论】:

  • 请发布您尝试过的内容(代码)。
  • 顺便说一句,题外话,如果您使用当前(

标签: c# .net winforms


【解决方案1】:

这是一个使用来自here的面板的示例

private void panel3_VisibleChanged(object sender, EventArgs e)  
{  
if (panel3.Visible == false)  
{  
if (panel3.Tag == null)  
panel3.Tag = panel3.Height;  
panel2.Height += (int)panel3.Tag;  
}  
else 
{  
if (panel3.Tag == null)  
panel3.Tag = panel3.Height;  
panel2.Height -= (int)panel3.Tag;  
}  
}  

如果您只使用表单,则可以使用 Form.size 属性

form1.Size = New Size(150, 200)

【讨论】: