代码之家  ›  专栏  ›  技术社区  ›  Sakkle

拆分容器中的固定面板高度

  •  9
  • Sakkle  · 技术社区  · 16 年前

    我有一个WinForm,上面有一个绑定导航器,下面有两个水平面板的SplitContainer。SplitContainer将填充绑定导航器未占用的空间。

    我希望将底部面板设置为固定高度,例如100像素,并让顶部面板填充其余空间。

    这是我当前的代码:

    kundeteamSplitContainer.SplitterDistance = kundeteamSplitContainer.Height - 100;
    

    我本以为这会将拆分器的距离动态设置为始终小于总高度100像素,从而使底部面板占据剩余的100像素。虽然在运行时重新调整窗体的大小时,底部面板会不断更改大小,但这并不能按预期工作。

    编辑:如果可能的话,我会坚持使用SplitContainer。有一系列与隐藏/显示已经实现的底部面板相关的功能,我不想再这样做。

    5 回复  |  直到 9 年前
        1
  •  27
  •   Lee    16 年前

    设置 FixedPanel 属性设置为要保持相同大小的面板。

        2
  •  17
  •   Sakkle    16 年前

    正如李所指出的:

    设置 FixedPanel 属性设置为要保持相同大小的面板。

    工作原理如下:

    teamSplitContainer.SplitterDistance = teamSplitContainer.Height - 100;
    teamSplitContainer.FixedPanel = FixedPanel.Panel2;
    
        3
  •  2
  •   MartW    16 年前

    我将对类似这样的内容使用TableLayoutControl,而不是拆分器。

        4
  •  2
  •   Sachith Wickramaarachchi    9 年前

    将IsSpliterFixed属性设置为“真”的最佳方法

    Property Window for splitcontainer

        5
  •  0
  •   Julo    12 年前

    如果只想显示和禁用面板(不自动调整大小,不由用户调整大小),请通过sakkle将以下行添加到代码中:

    teamSplitContainer.IsSplitterFixed = true;