SplitContainer中的固定面板高度

时间:2009-09-03 14:06:15

标签: c# .net user-interface split splitcontainer

我有一个WinForm,顶部有一个bindingNavigator,下面有两个水平面板的splitContainer。 splitContainer填充未被bindingNavigator占用的空间。

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

这是我目前的代码:

kundeteamSplitContainer.SplitterDistance = kundeteamSplitContainer.Height - 100;

我原以为这会将分割器距离动态设置为始终小于总高度100个像素,使得底部面板占据剩余的100个像素。这不能按预期工作,因为当我在运行时重新调整表单大小时底部面板会不断改变大小。

编辑:如果可能的话,我会坚持使用splitContainer。获得了一些与隐藏/显示已经实现的底部面板相关的功能,我不想再做那项工作了。

5 个答案:

答案 0 :(得分:27)

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

答案 1 :(得分:17)

李指出:

  

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

这样的工作原理如下:

teamSplitContainer.SplitterDistance = teamSplitContainer.Height - 100;
teamSplitContainer.FixedPanel = FixedPanel.Panel2;

答案 2 :(得分:2)

我会使用TableLayoutControl来做这样的事情而不是Splitter。

答案 3 :(得分:2)

最好的方法是将isSplitterFixed Property设置为“True”

Property Window for splitcontainer

答案 4 :(得分:0)

如果你只想显示和禁用面板(没有自动调整大小,没有用户调整大小),请在Sakkle这行添加代码:

teamSplitContainer.IsSplitterFixed = true;