我在form1上有一个文本框。
我想要做的是从form1获取文本框的值到form2。
我怎么能这样做?
答案 0 :(得分:1)
我所做的是创建一个新项目并添加第二个表单,然后在两个表单中添加一个文本框,在Form1上使用一个按钮将其文本框的值推送到Form2。
要实现此目的,请在Form2上创建一个Property并从Form1设置它。像这样:
<强> Form1中强>
public partial class Form1 : Form
{
Form2 frm2;
public Form1()
{
InitializeComponent();
frm2 = new Form2();
frm2.Show(this);
}
private void button1_Click(object sender, EventArgs e)
{
frm2.ModifyTextBoxValue = textBox1.Text;
}
}
<强>窗体2 强>
public partial class Form2 : Form
{
public Form2()
{
InitializeComponent();
}
public string ModifyTextBoxValue
{
get { return textBox1.Text; }
set { textBox1.Text = value; }
}
}
通过这种方式,如果需要,也可以使用相同的属性从 Form2中提取数据。
答案 1 :(得分:0)
你可以使用.Tag属性(看看我的问题here 这样做的简单方法是这样的: 在form2中添加另一个textBox
在form1中执行此操作。此代码将texBox.text存储在form1
中try
{
private void change_Click(object sender, EventArgs e)
{
form1 frm1 = new form();
frm1.Tag = this.textBox1.text;
frm1.ShowDialog();
}
}
catch (Exception ex)
{
MessageBox.Show(ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
然后在加载form2时写这个。此代码将使用texBox1
的值替换texBox2值string myText = (string)this.Tag;
this.textBox2.text = myText;