无法在c#Windows窗体中向控制面板添加控件

时间:2018-04-09 13:00:19

标签: c# winforms controls

我正在尝试将多个控件(如标签,图片框等)添加到c#Windows窗体中的Panel中。我的代码如下所示:

this.panel1.Controls.Add(this.label1);

每次我将它放在Designer.cs的panel1部分中时,在我在类和表单之间切换后它会被删除。我这样做是为了让我可以将Panel“转换”为一个包含所有其他控件的Bitmap。

2 个答案:

答案 0 :(得分:1)

嗯,正如您所看到的,您正在尝试修改

中的代码
  #region Windows Form Designer generated code

  ...

  // Designer is supposed to put (or/and remove) any code within this region
  // Do not put any custom code here manually
  this.panel1.Controls.Add(this.label1);

  ...   

  #endregion

您与Designer之间存在冲突。只需让它在专门设计(并标记出来)的区域中生成代码;把你的,比如构建者:

  public MyForm() { 
    // Let .Net initialize the form, create all constrols etc. first
    InitializeComponent(); 

    // Then, run your code here
    this.panel1.Controls.Add(this.label1); 
  }

答案 1 :(得分:0)

尝试:

public partial class Form1 : Form
{
    public Form1()
    {
        InitializeComponent();
        this.panel1.Controls.Add(this.label1);
    }
}