隐藏面板应强制下面的控件向上移动并调整表单大小

时间:2016-01-04 15:37:05

标签: c# .net winforms

好的,这让我有点疯狂。是时候问人群了:

我的表格包括:两个垂直"一半"由SplitContainer创建。在底部"一半" / SplitContainer面板......我有:

  1. 用户填写的一组字段/控件,包含在面板中。

  2. 下面是一个面板,其中包含"提交","取消" ...以及"显示/隐藏&#34的按钮;。这"显示/隐藏"旨在显示/隐藏我刚才在上面第1点中描述的面板。

  3. 我想要发生的是:当用户点击"隐藏"控制面板,不仅这些控件消失了,而且:

    • 包含提交,取消和显示/隐藏按钮的面板向上移动(这样我们就不会在现在隐藏的面板上有这么大的空白区域。)
    • 表单会垂直调整大小,以便弥补现在隐藏的面板以及我们向上移动底部控件的事实。

    将控件/字段面板显示/隐藏没有问题。但我似乎无法弄清楚如何完成其​​他两项任务。我尝试了AutoSizeAutoSizeModeDock选项的各种组合。

    有什么建议吗?

1 个答案:

答案 0 :(得分:6)

如果您将所有控件放入FlowLayoutPanel垂直排列子项的位置,则隐藏某些控件会导致“较低”控件向上移动。

一旦可选内容被隐藏或显示之前,您可能仍需要编写一些代码来调整表单本身的大小。