1. 程式人生 > >C# EventHandler委託事件小結

C# EventHandler委託事件小結

最近遇到一個委託的問題,+=這個符號,哇,真的是頭皮發麻,以為是運算子,根本不知道是委託 -。-!!

看下圖:我程式碼裡的
後面查了以後原來這種用法真的很普遍,我真是小白~~
資料中對C#委託的小清新解釋:

this.Activated += new EventHandler(Form1_Activated);
//Form1_Activated為方法名

這個語句拆開為:

this.Activated=先執行;  
Form1_Activated=後執行;

簡單說就是把兩個事件合在一起執行。
有一個例子很形象,扒過來看下(神鬼勿近)。

//小張類
    public class MrZhang
    {

        public
static void Aab() { Console.WriteLine("AAB"); } public static void Pi() { Console.WriteLine("3ZZ"); } } //小明類 class MrMing { //宣告一個委託,其實就是個“命令” public delegate void AabEventHandler(); public static
void Main(string[] args) { //這裡就是具體闡述這個命令是幹什麼的 AabEventHandler myDelegate = new AabEventHandler(MrZhang.Aab); myDelegate += MrZhang.Pi; //這時候委託被附上了具體的方法 myDelegate(); Console.ReadKey(); } }

結果就是先輸出Aab再後面輸出3zZ了。

百度冠名~