C# 事件event
阿新 • • 發佈:2021-01-08
技術標籤:C#
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace Events { public class Bridegroom { //自定義委託 public delegate void MarryHandler(string msg); //使用自定義委託定義事件,事件名MarryEvent public event MarryHandler MarryEvent; public void onMarriageComing(string msg) { if(MarryEvent != null) { //觸發事件 MarryEvent(msg); } } } public class Friend { public string Name; public Friend(string name) { Name = name; } public void SendMessage(string mess) { //處理事件 Console.WriteLine(this.Name + "收到了,到時候準時參加!"); } } class Program { static void Main(string[] args) { Bridegroom bridegroom = new Bridegroom(); Friend friend1 = new Friend("張三"); Friend friend2 = new Friend("李四"); Friend friend3 = new Friend("王五"); bridegroom.MarryEvent += new Bridegroom.MarryHandler(friend1.SendMessage); bridegroom.MarryEvent += new Bridegroom.MarryHandler(friend2.SendMessage); bridegroom.onMarriageComing("朋友們,結婚了"); Console.ReadKey(); } } }
執行: