控件的位置在添加到选项卡后发生了更改

本文关键字:发生了 选项 位置 添加 控件 | 更新日期: 2023-09-27 18:11:14

我有一个使用tabPage的winform应用程序,我动态地在页面中添加了一些控件。然而,在那之后,控制的位置发生了变化。经过一些调整,似乎控件的位置是正确的,但一些控件的大小又不正确。请帮助! !由于

代码片段如下:

foreach (Control c in controls)
{
    Point oldLocation = c.Location;
    this.SuspendLayout();                                          
    this.Controls.Add(c);                        
    c.Location = oldLocation;                       
    c.BringToFront();
    this.ResumeLayout(false);
    this.PerformLayout();
}

控件的位置在添加到选项卡后发生了更改

我可能没有详细描述这个。我需要的是有一个浮动标签页;所以我最终保留了另一个表单,并在浮动和停靠模式之间切换时打开/隐藏表单和标签页。

要实现这一点,我需要从表单和页面中复制/删除所有控件。原来控件的位置/大小会在移除/复制之间改变。

我最终得到的解决方案是在删除和复制之前存储原始位置/大小,然后重置控件的位置和大小。这听起来是一个很蹩脚的解决方案,但我现在找不到更好的解决方案。

相关文章: