跨窗体传值系列之Winform

在初学者写窗体程序的时候,会常遇到窗体传值的问题困扰,比如说我实例化了需要用到的窗体,我就可以取到窗体当中的控件进行传值,这样是传值不过来的 接下来有两种方法给大家整理如下:

在这里我用vs创建了两个窗体,一个Form1,一个Form2。窗体Form1里面创建了一个文本框TextboBox和一个Button按钮,

窗体Form2里只创建了一个label用来接收从Form1文本框传过来的值,我点击Form1的按钮显示Form2的窗体来看看传值的效果(我相信大家应该都会)。

设置Form1里的TextboBox的Modifiers的值为公共的(public),这样才方便我们在窗体Form2当中调用 这里大家注意一下,你要调用哪个控件上面的值就必须把Modifiers设置为public,否则调用不了。话不多说  上传值代码。

方法一:在Form1里的button点击事件里面写 Form2 fm = new Form2();
            fm.Owner = this;//定义此窗体为当前窗体
            fm.ShowDialog();

在Form2的load事件里写 label1.Text=(Owner as Form1).textboBox1.Text;//label的值为Form1的TextboBox的值

因为设置了TextboBox的Modifiers为公共的,所以可以调用;我们来看看传值的效果(如图):

方法二:通过中间值传值。同样以上述两个窗体为例,在解决方案新建一个class1.cs如图:

新建一个中间值 static string str=“”;

在Form1里的button单击事件中写 Form2 fm = new Form2();
            Class1.str = textBox1.Text;//先把文本框的值传入到类里的变量(中间值)
            fm.ShowDialog();

在Form2中的load加载界面写   label1.Text = Class1.str;

我们来看看测试的结果(如图):

  • 3
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值