1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
| class Program { static void Main(string[] args) { //创建MyEvent类的实例 MyEvent myEvent = new MyEvent(); //实例化事件,使用委托指向处理方法 myEvent.BuyEvent += new MyEvent.BuyDelegate(MyEvent.BuyFood); myEvent.BuyEvent += new MyEvent.BuyDelegate(MyEvent.BuyCake); myEvent.BuyEvent += new MyEvent.BuyDelegate(MyEvent.BuyFlower); //调用触发事件的方法 myEvent.InvokeEvent(); } } class MyEvent { //定义委托 public delegate void BuyDelegate(); //定义事件 public event BuyDelegate BuyEvent; //定义委托中使用的方法 public static void BuyFood() { Console.WriteLine("购买快餐!"); } public static void BuyCake() { Console.WriteLine("购买蛋糕!"); } public static void BuyFlower() { Console.WriteLine("购买鲜花!"); } //创建触发事件的方法 public void InvokeEvent() { //触发事件,必须和事件是同名方法 BuyEvent(); } }
|