static void Main(string[] args) { //创建事件源对象 TestEventSource es = new TestEventSource(); //创建监听对象 TestEventListener el = new TestEventListener(); //订阅事件 Console.WriteLine("订阅事件\n"); el.Sbscribe(es); //引发事件 Console.WriteLine("输入一个字符,再按Enter键"); string str = Console.ReadLine(); es.RaiseEvent(str.ToCharArray()[0]); //取消订阅事件 Console.WriteLine("\n取消订阅事件\n"); el.UnSubscribe(es); Console.ReadKey(); }
//取消订阅事件 public void UnSubscribe(TestEventSource evenSource) { evenSource.TestEvent -= new TestEventSource.TestEventHandler(KeyPressed); }
//订阅事件 public void Sbscribe(TestEventSource eventSource) { eventSource.TestEvent += new TestEventSource.TestEventHandler(KeyPressed); }