C#简单实现子窗体向父窗体传值的方法
本文实例讲述了C#简单实现子窗体向父窗体传值的方法。分享给大家供大家参考。具体如下:
击Form1的button1打开Form2
再点击Form2的button2
在button2_Click事件中通过this.Owner将Form2的textBox2的值设置给Form1的textBox1
并关闭Form2
publicpartialclassForm1:Form
{
publicForm1()
{
InitializeComponent();
}
privatevoidbutton1_Click(objectsender,EventArgse)
{
Form2frm2=newForm2();
frm2.Show(this);//或frm2.ShowDialog(this);
////或者
//Form2frm2=newForm2();
//frm2.Owner=this;
//frm2.Show();//或frm2.ShowDialog();
}
}
publicpartialclassForm2:Form
{
publicForm2()
{
InitializeComponent();
}
privatevoidbutton2_Click(objectsender,EventArgse)
{
Form1frm1=(Form1)this.Owner;
//注意如果textBox1是放在panel1中的则先找panel1再找textBox1
((TextBox)frm1.Controls["textBox1"]).Text=this.textBox2.Text;
this.Close();
}
}
点击Form1的button1打开Form2
再点击Form2的button2
在button2_Click事件中通过this.Owner及调用父窗体Form1的公开属性或方法
将Form2的textBox2的值设置给Form1的textBox1
并关闭Form2
publicpartialclassForm1:Form
{
publicForm1()
{
InitializeComponent();
}
publicstringTextBox1Text
{
set{this.textBox1.Text=value;}
get{returnthis.textBox1.Text;}
}
privatevoidbutton1_Click(objectsender,EventArgse)
{
Form2frm2=newForm2();
frm2.Show(this);//或frm2.ShowDialog(this);
////或者
//Form2frm2=newForm2();
//frm2.Owner=this;
//frm2.Show();//或frm2.ShowDialog();
}
}
publicpartialclassForm2:Form
{
publicForm2()
{
InitializeComponent();
}
privatevoidbutton2_Click(objectsender,EventArgse)
{
Form1frm1=(Form1)this.Owner;
frm1.TextBox1Text=this.textBox2.Text;
this.Close();
}
}
希望本文所述对大家的C#程序设计有所帮助。