namespace ConsoleApplication1
{
public delegate void MyDelegate(string abc); class ClassA
{
public event MyDelegate OnOccurUseDelegate; //这行的event可用可不用
public event EventHandler OnOccurUseEventHandler;//这行的event可用可不用
public void Run()
{
Console.WriteLine("ClassA Run()");
Console.WriteLine("invoke the Onccur");
OnOccurUseDelegate("OnOccurUseDelegate");
OnOccurUseEventHandler(this, EventArgs.Empty); }
} class ClassB
{
public ClassB(ClassA a)
{
a.OnOccurUseDelegate += new MyDelegate(Run);
a.OnOccurUseEventHandler += new EventHandler(Run);
} private void Run(string abc)
{
Console.WriteLine(abc);
} private void Run(Object sender,EventArgs args)
{
Run("OnOccurUseEventHandler");
} }
class Program
{
static void Main(string[] args)
{
ClassA a = new ClassA();
ClassB b = new ClassB(a);
a.Run();
Console.Read();
}
}}
{
public delegate void MyDelegate(string abc); class ClassA
{
public event MyDelegate OnOccurUseDelegate; //这行的event可用可不用
public event EventHandler OnOccurUseEventHandler;//这行的event可用可不用
public void Run()
{
Console.WriteLine("ClassA Run()");
Console.WriteLine("invoke the Onccur");
OnOccurUseDelegate("OnOccurUseDelegate");
OnOccurUseEventHandler(this, EventArgs.Empty); }
} class ClassB
{
public ClassB(ClassA a)
{
a.OnOccurUseDelegate += new MyDelegate(Run);
a.OnOccurUseEventHandler += new EventHandler(Run);
} private void Run(string abc)
{
Console.WriteLine(abc);
} private void Run(Object sender,EventArgs args)
{
Run("OnOccurUseEventHandler");
} }
class Program
{
static void Main(string[] args)
{
ClassA a = new ClassA();
ClassB b = new ClassB(a);
a.Run();
Console.Read();
}
}}
public event EventHandler someEvent;
public event EventHandler<TEventAgrs> someEvent;