且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

从一种形式传递一个值为另一种形式

更新时间:2022-12-11 15:03:10

您没有访问您的Form1中,从创建窗体2。在窗口2的button1_Click创建Form1中,这是不一样的初始的新实例。你可以通过你的Form1的实例窗口2构造这样的:

You don't access your form1, from which you created form2. In form2 button1_Click you create new instance of Form1, which is not the same as initial. You may pass your form1 instance to form2 constructor like that:

   // Code from Form 1
 public partial class Form1 : Form
{
    public void PassValue(string strValue)
    {
        label1.Text = strValue;
    }
    public Form1()
    {
        InitializeComponent();
    }
    private void button1_Click(object sender, EventArgs e)
    {
        Form2 objForm2 = new Form2(this);
        objForm2.Show();
    }![Application Screen Shot][1]

}

// Code From Form 2

public partial class Form2 : Form
{
    Form1 ownerForm = null;

    public Form2(Form1 ownerForm)
    {
        InitializeComponent();
        this.ownerForm = ownerForm;
    }

    private void button1_Click(object sender, EventArgs e)
    {       
        this.ownerForm.PassValue(textBox1.Text);
        this.Close();
    }
}