C#窗体间传值的两种方法

首先创建一个父窗体form1,拥有一下控件:textBox1,button1;

再创建一个子窗体form2,拥有控件:textBox2,button2;

(首先描述一下整个过程:当点击form1的button1时,打开form2窗口,然后在textBox2里面输入任意值,当点击button2时,将textBox2的值传给textBox1,即实现窗体间传值)

第一种方法:

在button1的单击事件中写入如下代码:

form2 f2 = new form2();

f2.ShowDialog(this);

在button2的单击事件中写入如下代码:

form1 f1 = (form1)this.owner;

f1.textBox1.text =this.textBox2.text;

运行即可实现传值。

第二种方法:

在button1的单击事件中写入如下代码:

form2 f2 = new form2(this);

f2.ShowDialog();

在窗体form2的窗体类中声明变量,并改写初始化构造函数如下:

form1 form1;

public form2(form1 f1)

{

InitializeComponent();

form1 = f1;

}

在button1的点击事件中写入如下代码:

form1.textBox1.text = this.textBox2.text;

运行即可实现传值。

注:textbox1的Modifiers(控件的可见性级别,即修饰符)应为:public ,internal,protected中之一,不能为private(私有)。

原文地址:https://www.cnblogs.com/bayonetxxx/p/1685797.html