我的程序中有两个表单。我有两个文本框和一个按钮。当我单击form1中的按钮时,使用showdialog();
显示form2
当我在form2中键入文本框并单击此窗体中的按钮时,form2关闭,焦点位于form1上,我在form2中键入的文本将传输到form1上的文本框。
我该怎么做?
答案 0 :(得分:3)
类似的东西:
Window form2 = new Form2();
form2.ShowDialog();
this.textBox1 = form2.TextBoxValue;
form2
定义了一个属性:
public string TextBoxValue {
get { return textBox2.Text; }
}
答案 1 :(得分:0)
如果您不关心安全性,最简单的方法是将form1中的TextBox声明为public,然后从form2更改其text属性。
答案 2 :(得分:0)
在form2中,您必须将textbox修饰符属性更改为public。这将使设计人员为文本框生成公共属性,以便您可以在任何地方访问它。
当form2关闭时,你只需执行:
myTextbox.Text = form2.textBox1.Text;
答案 3 :(得分:0)
试试这个:
(按顺序) 在Form1上:
private void button1_Click(object sender, EventArgs e)
{
Form2 frm2 = new Form2();
frm2.Showdialog();
this.Hide();
}
然后Form2:
private void button1_Click(object sender, EventArgs e)
{
Form2 frm2 = new Form2(textBox2.Text);
frm2.Showdialog();
this.Hide();
}
然后是form1:
public partial class Form1 : Form
{
public string textBoxValue;
public Form1()
{
InitializeComponent();
}
public Form1(string textBoxValue)
{
InitializeComponent();
this.textBoxValue = textBoxValue;
}
private void Form1_Load(object sender, EventArgs e)
{
textBox1.Text = textBoxValue;
}