首先,创建两个 WinForm.
每个WinForm中各加入一个Button和一个TextBox.
在WinForm2中写入代理和事件如下:
//代理声明
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,并显示出来. |