将一些信息转移到先前开放的表单

本文关键字:表单 信息 转移 | 更新日期: 2023-09-27 17:49:51

我有2个表格1。form1form2通过点击按钮打开form2,然后添加一些信息

    private void button1_Click(object sender, EventArgs e)
    {
        string Name = TxtNewName.Text;
        string City = TxtNewCity.Text
    }

我正在打开form by构造函数

   private void openForm2_Click(object sender, EventArgs e)
    {
        Form2 newform = new Form2();
        newform.Show();
    } 

我想转移这个Namecity变量以前打开的形式,当我关闭这两个值得到更新在已经打开的形式与字段相同的名称在form1

将一些信息转移到先前开放的表单

在第二个表单中定义2个公共属性

    public string GetName { get {return TxtNewName.Text;} }
    public string GetCity { get {return TxtNewCity.Text;} }

调用第二个表单后,您可以访问它们

     Form2 form2 = new Form2();
     form2.ShowDialog();
     string name = form2.GetName;
     string city = form2.GetCity;
编辑:

…如果我想在关闭form2后直接设置form1中带有名称和城市的文本框的文本属性

this.Text = form2.GetName;
this.city = form2.GetCity;

你应该公开保存form2中值的属性

public string Name { get { return TxtNewName.Text; } }
public string City { get { return TxtNewCity.Text; } }

private void openForm2_Click(object sender, EventArgs e) 
{ 
   Form2 newform = new Form2(); 
   newform.ShowDialog(); 
   var city = newform.City;
   var name = newform.Name;
}

由于您需要将值传递给第一个表单,我建议使用参数构造函数来获取您的第一个表单。

设置属性以捕获需要传递给Form1的值

Form2 newform = new Form2(this); // passing instance of Form1
newform.Show();

现在您可以访问Form1并分配所需的值。