如何设置最小值和最小值?我的C#表单中水平拆分容器中面板的最大高度?
答案 0 :(得分:1)
无论Panel
位于何处,您通常可以通过以下方式指定最大高度和宽度:
panel1.MaximumSize = new Size(300, 300); //max 300 x 300
如果您使用SplitContainer
并且Panel
位于SplitContainer
内,并且您希望在SplitContainer
内进行更改,则可能需要在您指定上述最大高度和宽度之前,确定Panel
是否在Panel1
的{{1}}或Panel2
中。像这样:
SplitContainer
但是,如果你想要改变//assuming the name "panel1" in the Panel1 of the SplitContainer
Panel panel = splitContainer1.Panel1.Controls["panel1"];
panel.MaximumSize = new Size(300, 300); //max 300 x 300
尺寸本身,你也可以为splitContainer
应用MaximumSize
:
splitContainer
或者,如果您想要更改splitContainer1.MaximumSize = new Size(300, 300);
或splitContainer.Panel1
,您还可以尝试使用splitContainer.Panel2
属性。
答案 1 :(得分:1)
我知道这个问题很旧,但是我在任何地方都找不到合适的答案。有人建议将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;
}
}
只需将Pane1MaxWidth常量设置为您想要将Panel1的最大大小扩展到的任何值即可。
答案 2 :(得分:0)
SplitContainer有两个字段:Panel1MinSize和Panel2MinSize。要设置panel1的最大大小,只需为panel2设置适当的最小大小。