10

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

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

这是我当前的代码:

kundeteamSplitContainer.SplitterDistance = kundeteamSplitContainer.Height - 100;

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

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

4

5 回答 5

27

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

于 2009-09-03T14:18:01.130 回答
20

正如李所指出的:

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

这像这样工作:

teamSplitContainer.SplitterDistance = teamSplitContainer.Height - 100;
teamSplitContainer.FixedPanel = FixedPanel.Panel2;
于 2009-09-03T14:30:40.973 回答
3

将 isSplitterFixed 属性设置为“True”的最佳方法

拆分容器的属性窗口

于 2016-09-15T13:14:40.047 回答
2

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

于 2009-09-03T14:12:47.213 回答
0

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

teamSplitContainer.IsSplitterFixed = true;
于 2014-01-09T13:12:59.870 回答