在窗体间传递数据的方法比较多:
在子窗体中自定义一个构造函数,参数类型是主窗体,当要显示子窗体的时候,就用这个构造函数来实例化子窗体,然后把this指针传进去,说起来太抽象了,我大概一写大家应该就明白了:
public class frmMain:Form { ... frmControl controlForm=new frmControl(this); controlForm.Show(); } public class frmControl:Form //子窗体,用来控制主窗体的某些显示! { private frmMain mainForm; public frmControl(frmMain mainForm) { this.mainForm=mainForm; } private void button1_Click(object sender,EventArgs e) { frmMain.textBox1.Text=this.textBox1.Text; //把子窗体的文本框值传递给主窗体的文本框! } }
直接传值
通过窗体构造函数调用 先要见一个私有变量
类似这样
private string str;
public frmMain(string str)
{
this.str = str;
InitializeComponent();
}