我有一张表格,可以打开另一张表格。用户在此处写入一些信息。当关闭第二个表格时,在第一个表格上,我需要使用之前添加的信息。
(添加的信息是一个字符串 - 一个电子邮件地址,我会将它添加到第一个表单中的列表框项目。)
我尝试了Close()或Hide()。但无论顺序是什么,我在新表格关闭时遇到问题,或者它根本没有打开。
答案 0 :(得分:7)
您可以使用包含该值的表单的字符串属性。它只会公开私人电子邮件字段的价值。
例如:
public class SomeForm : Form
{
public string Email
{
get
{
return txtEmail.Text;
}
}
}
然后从一些外部表单中,您可以显示表单并读取表单关闭后输入到电子邮件字段中的值:
using (var form = new SomeForm())
{
if (form.ShowDialog() == DialogResult.OK)
{
string email = form.Email;
// do something with the email
}
}
答案 1 :(得分:0)
从form1
获取值并在parameter
构造函数中传递为form2
。请参阅下面的代码
private void button1_Click(object sender, EventArgs e)
{
string email = listBox1.SelectedItem.ToString();
Form2 secondForm = new Form2(email);
this.Hide();
secondForm.Show();
}
在Form2构造函数中:
public Form2(string email)
{
textbox2.text = email;
}