Winforms使用状态栏自动调整表单

时间:2012-08-29 19:23:38

标签: c# winforms c#-4.0

我正在创建一个自动调整设置为true的Windows窗体,以及AutoSizeMode = GrowAndShrink。

我在表单上添加了一个简单的控件并运行程序。表单正确调整大小以仅显示一个控件。

然后我在表单底部添加了一个条带(我从一个DevExpress Bar开始,但只是为了只使用本机控件,我在那里停留了一个statusStrip)。

这次运行应用程序时,自动调整的表单与没有状态栏的表单完全相同,我添加的控件与状态栏重叠(我可以看到状态栏实际上仍然存在)。

为什么会这样?这是故意的吗?我希望表单缩小会尊重表单底部的状态栏不应重叠的事实。

2 个答案:

答案 0 :(得分:2)

当控件停靠等时,AutoSize不能很好地工作。关闭StatusStrip上的DockStyle以查看自动调整大小。

请参阅Jared Par的AutoSize and DockStyle.Fill don't mix博客。

  

AutoSize和DockStyle.Fill不能很好地混合在一起。这两个属性都用于描述相对于控件其余部分的大小关系,但它们以相互冲突的方式进行。

答案 1 :(得分:2)

我假设statusStrip设置为dock。因此,控件将根据表单大小停靠,而不是相反。