日期:2014-05-19  浏览次数:20862 次

如何在同一程序的不同Form间传递数据?(我是新手)
比如一程序有Form1和Form2两个窗体,Form1有1个TextBox控件,Form2有1个TextBox和Button控件,点击Button将Form2中的TextBox的文字传递到Form1中的TextBox。我不知道怎么做的。

------解决方案--------------------
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}

private void button1_Click(object sender, EventArgs e)
{
//获取文本框中的数据
string str = this.textBox1.Text;
//实例话窗体2 并将获取的数据作为实参传递过去
Form2 obj = new Form2(str);
obj.Show();
}
}


public partial class Form2 : Form
{
private string _str = null;
//有参构造
public Form2(string str)
{
InitializeComponent();
//将传递进来的参数赋值给变量
this._str = str;
}

private void Form2_Load(object sender, EventArgs e)
{
//在Load事件中将该变量打印倒文本框中
textBox1.Text = _str;
}

}
------解决方案--------------------
构造函数传值
属性传值
成员方法传值
------解决方案--------------------
有两种情况:
一、两个都是Main的话,用session传值;
二、一个是Maing一个是Sub的话,就定义全局变量,直接调用。