拆分容器中面板的最大高度

Bis*_*Roy 5 c# split resize max winforms

如何在 C# 表单的水平拆分容器中设置面板的最小和最大高度?

小智 5

我意识到这个问题很老了,但我在任何地方都找不到合适的答案。有人建议将Panel1设置为固定面板,这不是我想要的。我通过使用 splitcontainers sizeChanged 和 SplitterMoved 事件解决了这个问题:

    private const int Panel1MaxWidth = 1075;
    private void splitContainer1_SizeChanged(object sender, EventArgs e)
    {
        if(splitContainer1.Panel1.Width > Panel1MaxWidth)
        {
            splitContainer1.SplitterDistance = Panel1MaxWidth;
        }
    }

    private void splitContainer1_SplitterMoved(object sender, SplitterEventArgs e)
    {
        if (splitContainer1.Panel1.Width > Panel1MaxWidth)
        {
            splitContainer1.SplitterDistance = Panel1MaxWidth;
        }
    }
Run Code Online (Sandbox Code Playgroud)

只需将 Pane1MaxWidth 常量设置为您希望 Panel1 扩展至的最大尺寸即可。


Art*_*tem 1

SplitContainer 有 2 个字段:Panel1MinSize 和 Panel2MinSize。要设置 panel1 的最大尺寸,只需为 panel2 设置适当的最小尺寸即可。