[C#語法] 事件(Event)使用簡單三步

用C#自訂事件簡單作法

(1) 在自訂類別中宣告委派與事件

public class ClassName
{
    //宣告委派
    delegate void EventPrototype(object sender, EventArgs e);
    //宣告事件
    public event EventPrototype eventName;
}

(2)設定事件觸發位置

public class ClassName
{
    //宣告委派
    delegate void EventPrototype(object sender, EventArgs e);
    //宣告事件
    public event EventPrototype eventName;
    
    //自訂方法
    void function(){
        //宣告object Type變數
        object obj = new object();
        //在類別中未註冊事件時,可避免觸發時的null錯誤
        //事件名稱?.Invoke(事件參數);
        eventName?.Invoke(obj,new EventArgs()); 
    }
}

(3)在實際使用class中註冊事件

//實體化類別
ClassName obj = new ClassName();
//註冊事件,定義當事件觸發時要處裡事件的函式
obj.eventName += new ClassName.EventPrototype(functionName);

private void functionName(object sender, EventArgs e)
{
    //當觸發事件時要處理的函式
}