在一个大panel中,如果我们不用小容器,直接放入上中下三组内容。如下图

直接不借助小panel,添加后。三部分的效果在窗体最大化后,会变成如下效果。

为了实现效果,我们需要增加三个小panel,把三部分分别包进去panel1,panel2,panel3。panel1的Dock为top,panel2的Dock为Fill,panel3的Dock为Bottom。
然后依次添加
Panel.Controls.Add(panel1);
Panel.Controls.Add(panel2);
Panel.Controls.Add(panel3);
会发现变成如下情况,2打顶排列,且被1所覆盖。还是不满足要求。

经测试,发现,panel.Controls.Add(panel1)代码添加三个Panel顺序会造成影响。先添加的权重会更高,会更靠前。所以会覆盖后面。此时我们先添加第二个就能解决问题了。正确代码如下:
Panel.Controls.Add(panel2);
Panel.Controls.Add(panel1);
Panel.Controls.Add(panel3);
Winform布局错乱调整
最新推荐文章于 2026-03-03 05:25:27 发布


3299

被折叠的 条评论
为什么被折叠?



