首页 > 编程 > C# > 正文

C#简单实现子窗体向父窗体传值的方法

2020-01-24 01:27:50
字体:
来源:转载
供稿:网友

本文实例讲述了C#简单实现子窗体向父窗体传值的方法。分享给大家供大家参考。具体如下:

击Form1的button1 打开Form2
再点击Form2的button2

在button2_Click事件中 通过this.Owner将Form2的textBox2的值设置给Form1的textBox1
并关闭Form2

public partial class Form1 : Form{  public Form1()  {   InitializeComponent();  }  private void button1_Click(object sender, EventArgs e)  {   Form2 frm2 = new Form2();   frm2.Show(this);//或 frm2.ShowDialog(this);   ////或者   //Form2 frm2 = new Form2();   //frm2.Owner = this;   //frm2.Show();//或 frm2.ShowDialog();  }}public partial class Form2 : Form{  public Form2()  {   InitializeComponent();  }  private void button2_Click(object sender, EventArgs e)  {   Form1 frm1 = (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

public partial class Form1 : Form{  public Form1()  {   InitializeComponent();  }  public string TextBox1Text  {   set { this.textBox1.Text = value; }   get { return this.textBox1.Text; }  }  private void button1_Click(object sender, EventArgs e)  {   Form2 frm2 = new Form2();   frm2.Show(this);//或 frm2.ShowDialog(this);   ////或者   //Form2 frm2 = new Form2();   //frm2.Owner = this;   //frm2.Show();//或 frm2.ShowDialog();  }}public partial class Form2 : Form{  public Form2()  {   InitializeComponent();  }  private void button2_Click(object sender, EventArgs e)  {   Form1 frm1 = (Form1)this.Owner;   frm1.TextBox1Text = this.textBox2.Text;   this.Close();  }}

希望本文所述对大家的C#程序设计有所帮助。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表