C#如何从第二种形式创建第一种形式的对象

C#如何从第二种形式创建第一种形式的对象,c#,winforms,controls,C#,Winforms,Controls,我不清楚如何从第二个表单创建第一个表单(主表单)中的对象(属性:包含标签和文本框的面板) 第一个表单有一个面板,应该在其中创建属性 第一个表单还有一个按钮,用于打开第二个表单 第二种形式的作用是创建和配置属性 第二个表单有“创建”按钮。单击时,应在第一个表单中创建一个属性,并将其插入属性面板 你能给我举一些例子说明如何执行这种行动吗 为什么不让Form1为自己创建控件 完成Form1,让我们通过构造函数将Form1传递给 public partial class Form2 : Form {

我不清楚如何从第二个表单创建第一个表单(主表单)中的对象(属性:包含标签和文本框的面板)

  • 第一个表单有一个面板,应该在其中创建属性
  • 第一个表单还有一个按钮,用于打开第二个表单
  • 第二种形式的作用是创建和配置属性
  • 第二个表单有“创建”按钮。单击时,应在第一个表单中创建一个属性,并将其插入属性面板
  • 你能给我举一些例子说明如何执行这种行动吗


    为什么不让
    Form1
    为自己创建控件

    完成
    Form1
    ,让我们通过构造函数将
    Form1
    传递给

    public partial class Form2 : Form {
      ...
    
      public Form1 ParentForm {get;} = null;
    
      public Form2() {
        InitializeComponent();
      }
    
      public Form2(Form1 parentForm) : this() {
        ParentForm = parentForm;
      }
    
      private void btnCreateControl_Click(object sender, EventArgs e) {
        // If we have parent form, create some controls on it
        if (ParentForm != null)
          ParentForm.CreateMyControl(); 
      }
    
    或者
    .ShowDialog(this)
    ,然后
    ((Form1)this.Owner).CreateMyControl(),可能传递一些参数,这似乎是OP的目标。
    
    public partial class Form2 : Form {
      ...
    
      public Form1 ParentForm {get;} = null;
    
      public Form2() {
        InitializeComponent();
      }
    
      public Form2(Form1 parentForm) : this() {
        ParentForm = parentForm;
      }
    
      private void btnCreateControl_Click(object sender, EventArgs e) {
        // If we have parent form, create some controls on it
        if (ParentForm != null)
          ParentForm.CreateMyControl(); 
      }