public static void Main()
var anyClass = new AnyClass();
var watcherOne = new WatcherOne();
var watcherTwo = new WatcherTwo();
anyClass.OnEventHappen += watcherOne.OnSpy;
anyClass.OnEventHappen += watcherTwo.OnSpy;
anyClass.GenerateEvent();
Console.WriteLine("Hello World");
private void EventHappen(EventArgs e)
EventHandler<EventArgs> tempEvent = OnEventHappen;
public event EventHandler<EventArgs> OnEventHappen;
public void GenerateEvent()
EventHappen(new EventArgs());
public void OnSpy(object sender, EventArgs e)
Console.WriteLine(this.ToString() + " invoke OnSpy");
public void OnSpy(object sender, EventArgs e)
Console.WriteLine(this.ToString() + " invoke OnSpy");