怎么实现A中一单击就B中方法就执行?????
谢谢!!!!!!!
a.Click += new EventHandler((se, ar) => { b.方法(参数...); });
事件不是A自己响应的,是A实例的持有者响应的。
到响应的地方去调用B实例的方法(除非是静态方法,普通方法必须有实例才能调用)。
在a的单击事件中写:
new B().click();
using System;
class A
{
private EventHandler click;
public event EventHandler Click
{
add { click += value; }
remove { click -= value; }
}
public void PerformClick()
{
click(this, new EventArgs());
}
}
class B
{
public void foo()
{
Console.WriteLine("b.foo()");
}
}
public class Test
{
public static void Main()
{
A a = new A();
B b = new B();
a.Click += new EventHandler((se, ar) => { b.foo(); });
a.PerformClick();
}
}
http://ideone.com/bSbvN3
运行结果
b.foo()
在A类单击事件中调用B中的方法