C# 如何获取面板';s子对象动态重置其位置。Y属性?
我在窗体上有一个面板,面板的AutoScroll属性设置为True 在该面板上,我放置了几个GroupBox控件,它们比面板占用更多的空间-因此,面板会产生一个垂直滚动条 如果需要,其中一个面板可以在运行时更改高度(我根据其包含的文本量以编程方式设置其高度): 如果面板高度增加,则此操作正常-面板下方的组框“向下移动”。但是,如果面板高度降低,则面板下方的组框不会“向上移动”C# 如何获取面板';s子对象动态重置其位置。Y属性?,c#,winforms,resize,panel,groupbox,C#,Winforms,Resize,Panel,Groupbox,我在窗体上有一个面板,面板的AutoScroll属性设置为True 在该面板上,我放置了几个GroupBox控件,它们比面板占用更多的空间-因此,面板会产生一个垂直滚动条 如果需要,其中一个面板可以在运行时更改高度(我根据其包含的文本量以编程方式设置其高度): 如果面板高度增加,则此操作正常-面板下方的组框“向下移动”。但是,如果面板高度降低,则面板下方的组框不会“向上移动” 我知道我可以通过编程方式将下面的groupbox控件向上移动,但我认为一定有一种更好/更省事的方法来实现这一点…用Flo
我知道我可以通过编程方式将下面的groupbox控件向上移动,但我认为一定有一种更好/更省事的方法来实现这一点…用
FlowLayoutPanel
替换面板
,这将自动实现
(您可能需要关闭FL面板的环绕)将其停靠属性设置为顶部。然后更改子对象的Z顺序以指定其显示顺序
GroupBox1.Dock = DockStyle.Top;
GroupBox2.Dock = DockStyle.Top;
GroupBox3.Dock = DockStyle.Top;
如果groupbox1增大或缩小,则其他两个面板将移动以适应。右键单击控件并执行“向前移动”、“向后发送”等操作,或者您可以进入designer.cs文件,只安排将它们添加到其父级的顺序。
GroupBox1.Dock = DockStyle.Top;
GroupBox2.Dock = DockStyle.Top;
GroupBox3.Dock = DockStyle.Top;