锚定/对接时控件的大小是有问题的

时间:2015-04-09 13:03:36

标签: c# forms resize anchor dock

我在表单中锚定和调整内容时遇到了一些问题。enter image description here

这个(上面)是当用户的焦点在groupbox1上时控件在第一个实例中的样子。都好。注意groupbox2锚定在所有4个方面。

enter image description here

现在,当用户的焦点转移到groupbox2时,会发生一些事情(上图)。然后将Groupbox2.Top设置为在groupbox1下方。首先,groupbox1缩小一点只显示最重要的信息。这里的问题(我认为)是,只要groupbox1收缩并且groupbox2动态向上移动,它就不会调整大小以仍然填充控件的下半部分,但会在groupbox2下面留下一个愚蠢的空间。在调整窗体大小时,Groupbox2仍然可以正确生长,因为它固定在所有4个边上。但问题是groupbox2下面没有多余的空间。

enter image description here

这(上图)就是我想要发生的事情。当焦点在groupbox2上时,它应该填充groupbox1下面的所有剩余空间。

Dock.Bottom并没有真正发挥作用,Dock.Fill涵盖了groupbox1(它不应该)。我可以通过动态设置topheight属性来执行此操作,但在代码中使用高度/宽度时已经多次提醒过。

还有其他解决方案吗?

1 个答案:

答案 0 :(得分:1)

尝试将它们添加到Panel
make groupBox1 Dock.Top,groupBox2 Dock.Fill
Panel Dock.Fill一样(如果表格上还有其他控件,则在所有方面都锚定)。
如果一个GroupBox覆盖另一个,则表示它们的顺序错误。要更改它,请选择其中一个,然后选择“Send to Back”或“Bring to Front” 不再需要设置groupBox2的顶部。它应该自动填充groupBox1下的空间。