2

我正在创建一个将 autosize 设置为 true 且 AutoSizeMode = GrowAndShrink 的 windows 窗体。

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

然后我在表单的底部添加了一个条(我从 DevExpress Bar 开始,但为了只使用本机控件,我在下面贴了一个 statusStrip)。

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

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

4

2 回答 2

2

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

请参阅 Jared Par 的AutoSize 和 DockStyle.Fill 不要混合博客。

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

于 2012-08-29T19:28:00.870 回答
2

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

于 2012-08-29T19:28:02.360 回答