动态地显示在另一类中创建的文本框,在C#中的win表单上



我的意图是在form1中创建动态文本框。我有一个" form1"类和一个" splbox"类。我已经在类" splbox"类中宣布了一个动态文本框&传递了一个字符串。我想要的只是在类'form1'&中调用此动态文本框。以Form1主形式显示。在我的上述代码中,新的形式正在打开&然后在这种新形式中显示动态文本框 - 我不想要

namespace TxtClassRun
{
    public partial class Form1 : Form
    {
        SplBox s1 = new SplBox();
        public Form1()
        {
            InitializeComponent();
        }
        private void button1_Click(object sender, EventArgs e)
        {
            // show the dynamic text box in Form1 
            s1.settxtbox();
            s1.Show(); // opening another window. I want it to be in "Form1"           
        }
    }
    //New Class
    public partial class SplBox : Form
    {
        //Global declarations 
        TextBox t2 = new TextBox();
        public void settxtbox()
        {
            t2.Text = "Hello World";
            Controls.Add(t2);
        }
    }
}

尝试这个,

public partial class SplBox : Form
{
     //Global declarations 
     TextBox t2 = new TextBox();
     private Form TempOwnerForm;
     public SplBox(Form TempOwnerForm) {
         this.TempOwnerForm = TempOwnerForm;
     }
     public Form OwnerForm { get { return TempOwnerForm; } set { this.TempOwnerForm = value; } }
     public void settxtbox()
     {  
         t2.Text = "Hello World";
         TempOwnerForm.Controls.Add(t2);
     }
}

希望有帮助,

最新更新