两个窗口之间利用委托
窗口2中触发事件,窗口1中实现事件
比较简单 直接上代码
窗口1
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
Form2 f = new Form2();
f.show = new Form2.fnShow(fnShow);
f.Show();
}
void fnShow(int i)
{
textBox1.Text = i.ToString();
}
}
窗口2
public partial class Form2 : Form
{
public Form2()
{
InitializeComponent();
}
public fnShow show;
public delegate void fnShow(int m);
private void button1_Click(object sender, EventArgs e)
{
this.Invoke(show, Convert.ToInt32(((Button)sender).Tag));
}
}
点击Form1的button,弹出Form2,点击form2中按钮,form1中显示点击的按钮数字