winform 窗体间的传值(转)
Posted chinayixia
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了winform 窗体间的传值(转)相关的知识,希望对你有一定的参考价值。
原文: https://blog.csdn.net/e_wsq/article/details/7714031
源码: https://github.com/SHAREVIEW/winform_valnue-from-form-2-form_20190919.git
在WinForm之间传值有很多种方法,在这里我用的是delegate and event进行传值.
新建一个WindowsApplication,创建两个WinForm.其实它们就是两个类.
每个WinForm中各加入一个Button和一个TextBox.
在WinForm2中写入代理和事件(delegate and event)如下:
//代理声明
public delegate void SendMessage(string str);
//事件声明
public event SendMessage SendEvent;
private void btnSend_Click(object sender, EventArgs e)
//调用事件
SendEvent(textBox1.Text);
在WinForm1中写入如下代码:
private void btnShow_Click(object sender, EventArgs e)
Form2 f2 = new Form2();
//Form2事件注册
f2.SendEvent+=new Form2.SendMessage(GetMessage);
f2.Show();
//代理调用的方法
public void GetMessage(string str)
textBox1.Text = str;
在点击WinForm1的Button弹出WinForm2后,在WinForm2中文本框输入文字,然后点击按钮,信息将会立刻发送到WinForm1,并显示出来.
以上是关于winform 窗体间的传值(转)的主要内容,如果未能解决你的问题,请参考以下文章