WinForm(多窗体之间传递数据)

有FORM1以及FORM2两个窗体,如何在这两个窗体之间传递数据呢?
首先在FORM1中,定义一个PUBLIC型的变量,用来记录需要传递的数据。public string f1Num;
在需要弹出FORM2的事件中加入:Form2 frm = new form2();frm.f2Num = Num.Text;frm.frm1 = this;frm.Show();
这里的frm是Form2的实例,而f2Num是FORM2窗体中用来记录数据的变量,将它进行赋值。frm1是FORM1的实例,将他进行初始化。然后显示FORM2
在FORM2中,需要先声明FORM1,同样的也要有一个记录数据的变量Form1 frm1;public string f2Num;
在Form2_Loag(object sender,EventArgs e){ //对变量进行初始化Num.text = f2Num;}
在经过一系列操作之后,返回值的时候,frm1.f1Num = Num.text;this.Hiden();
这样数值又传递回了FORM1,不过要注意的是,这里不能将FORM1实例化,而是进行传递。
然后在FORM1的Form1_Paint事件中,对数据进行初始化
Num.text = f1Num;
这样,整个过程就结束了。

其实总的思路就是,要给另外的窗口开辟一个可以供其访问和操作的“对象”,这里说的对象可以是方法,也可以是属性,这样。就可以完成很多操作了。这里只是一个引子,其实还有其他的应用可以使用这样的方法

比如我在FORM2中操作FORM1的BUTTON或者其他对象的属性,都是可以进行修改的
 
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值