c# winform将form2的textbox传递到form1的label

如题所述

应该有很多种方法
比如:
建立一个第三方公共类
namespace Test //1.命名空间我随意写的,按你的项目命名来就行了
{
class FormHelper //同上1
{
public static string textBoxOf = ""; //用于接收textBox 的值
}
}

然后,在Form2里面直接用 类点.属性对第三方公共类里的属性赋值:
FormHelper.textBoxOf = txtName.text; //Form2里你想传的textBox的名称我设定为txtName了。你想传的应该是textBox的文本吧?反正按你想要的改就是。

最后,在Form1的lable里调用:
lblName.text = FormHelper.textBoxOf; //lblName是我随意设定的名称。

另外一种,可以直接在Form1 里面写一个公共变量:
public string textBoxOf;
然后在Form2里面实例一个对Form1对象,再赋值:
Form1 newForm1 = new From1(); //实例
newForm1.textBoxOf= txtName.text; //传递值
最后在Form1 里直接用就可以了:
lblName.text = textBoxOf;
温馨提示:内容为网友见解,仅供参考
第1个回答  2011-04-12
form1zhong 将label1 的Modifiers 属性 设为Public
private void btn_NewEmp_Click(object sender, EventArgs e)
{
Form2 frm = new Form2 ();
frm .MotherForm = this;
frm .ShowDialog();
}

form2 中
public form1 MotherForm;
private void btn_Edit_Click(object sender, EventArgs e)
{
MotherForm.label1.Text = this.TextBox1.Text.ToString();
This.Close();
}

试试这一个方法 不是最好的 但应该可以实现传值
第2个回答  2011-04-12
public form1(string textbox)
{
this.label.Text =textbox;
}
form2传值事件里面
form1 f1=new form1(textbox.Text);
第3个回答  2011-04-12
借鉴了,学习...
相似回答