C# Splitcontainer开关水平垂直运行时相同大小和中心Winforms

C# Splitcontainer开关水平垂直运行时相同大小和中心Winforms,c#,winforms,C#,Winforms,我有一个带有splitcontainer的表单。在运行时,用户可以在垂直和水平方向之间切换,当切换面板大小时,面板的一侧几乎看不到任何东西,除非用户将其放大 当两个面板在方向之间切换时,我可以设置哪些属性使它们的大小相同 非常感谢当您更改方向时,请尝试以下操作: splitContainer1.SplitterDistance = (splitContainer1.Orientation == Orientation.Vertical? splitContainer1.Width

我有一个带有splitcontainer的表单。在运行时,用户可以在垂直和水平方向之间切换,当切换面板大小时,面板的一侧几乎看不到任何东西,除非用户将其放大

当两个面板在方向之间切换时,我可以设置哪些属性使它们的大小相同


非常感谢

当您更改方向时,请尝试以下操作:

splitContainer1.SplitterDistance =
   (splitContainer1.Orientation == Orientation.Vertical? 
    splitContainer1.Width : splitContainer1.Height) / 2;
当然,简单地说,当设置为水平时:

splitContainer1.SplitterDistance = splitContainer1.Height / 2;
..当设置为垂直时:

splitContainer1.SplitterDistance = splitContainer1.Width / 2;
…分别


(注意,我现在在方向上犯了两次错误,唉。我想这并不像看上去那么简单;-)

你好,很抱歉,回复太晚了,它确实适用于垂直方向(将水平方向更改为垂直方向,但不适用于水平方向),所以很抱歉-我(有意双关语)迷失了方向。请参阅更正的解决方案!