WinForm间传值
Posted 回眸@浅笑
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了WinForm间传值相关的知识,希望对你有一定的参考价值。
最近做个小软件,需要两个WINFORM间互相传值,实现起来虽简单,还是记录下来,以备不时之需。
新建一个窗体应用,创建两个WinForm.(Form1 Form2)
每个WinForm中各加入一个Button和一个TextBox.
首先Form1的值要传给Form2,需要把Form2的接受值控件的Modifiers设置为public;
Form1中代码如下:
private void butSetBoxInfo_Click(object sender, EventArgs e) { Form2 frm2 = new Form2(); frm2.txtBox2.Text = txtBox1.Text; frm2.SendEvent += new Form2.SendMessage(GetMessage); frm2.ShowDialog(); } private void GetMessage(string str) { txtBox1.Text = str; }
Form2中txtBox2接收到Form1的txtBox1的值,当txtBox2改变值后,再传回txtBox1;Form2代码如下:
//代理声明 public delegate void SendMessage(string info); //事件声明 public event SendMessage SendEvent; private void btnOK_Click(object sender, EventArgs e) { //TODO其他数据 SendEvent(txtBox2.Text); this.Close(); } private void btnCancle_Click(object sender, EventArgs e) { this.Close(); }
如此,就实现了两个窗体间值的互传。
以上是关于WinForm间传值的主要内容,如果未能解决你的问题,请参考以下文章