winfrom窗口之间传递数据

来源:百度知道 编辑:UC知道 时间:2024/07/02 14:28:36
A窗口单击一个按钮,弹出B窗口
在B窗口 有一个TextBox接受输入,单击确定返回.
B窗口关闭的同时,在A界面上的显示出来B窗口接受的输入
先谢谢了

【转】
有很多种办法,例如在母窗体设置静态变量,子窗体修改这个静态变量的值,例如在ShowDialog结束之后得到自窗体实例的某个属性等等.你可以给子窗体注册一个自定义事件,在点确定的时候触发它,然后在主窗体里接收.有的地方需要具体设计一下你窗体的属性事件什么的.具体的不说了,相信你可以理解.

给你个具体的,在子窗体里写个属性()
private string m_Text;
public string TextBoxText
{
get{return m_Text;}
set{m_Text = value;}
}

private void button1_Click(object sender, System.EventArgs e)
{
//string str=this.textBox1.Text;
//改成
this.TextBoxText = this.TextBox1.Text;
this.DialogResult = DialogResult.Yes;
this.Close();
//Form1 obj=new Form1(str);
}

在你的主窗体的触发事件里面写

Form2 f= new Form2();
if(f.ShowDialog == DialogResult.Yes)
{
this.listBox1.Items.Add(f.TextBoxText);
}

1.可以用public 声明一个变量,
2.利用构造函数。
主窗体:mainform
子窗体:childform
public childform(DataTable dt,mainform mainform)
{
InitializeComponent();
f1 = form1;

Dt = dt;
dt=null;