溫馨提示×

c#中EventArgs怎么使用

c#
小億
345
2023-09-12 23:52:38
欄目: 編程語言

在C#中,EventArgs是一個通用的事件參數類,用于傳遞事件相關的數據。使用EventArgs的步驟如下:

  1. 創建一個繼承自EventArgs的自定義事件參數類,例如:
public class MyEventArgs : EventArgs
{
public string Message { get; set; }
public MyEventArgs(string message)
{
Message = message;
}
}
  1. 在包含事件的類中定義一個事件,該事件使用自定義的事件參數:
public class MyClass
{
public event EventHandler<MyEventArgs> MyEvent;
public void RaiseEvent(string message)
{
MyEventArgs args = new MyEventArgs(message);
OnMyEvent(args);
}
protected virtual void OnMyEvent(MyEventArgs e)
{
MyEvent?.Invoke(this, e);
}
}
  1. 在訂閱事件的地方,定義一個事件處理方法:
public class Program
{
public static void Main(string[] args)
{
MyClass obj = new MyClass();
obj.MyEvent += Obj_MyEvent;
obj.RaiseEvent("Hello world");
}
private static void Obj_MyEvent(object sender, MyEventArgs e)
{
Console.WriteLine(e.Message);
}
}

在這個例子中,當MyClass實例的RaiseEvent方法被調用時,會觸發MyEvent事件。在Main方法中,我們訂閱了這個事件,并在Obj_MyEvent方法中處理事件。事件處理方法使用MyEventArgs參數來獲取傳遞的消息,并在控制臺上打印出來。

注意:在定義事件時,使用泛型委托EventHandler,其中TEventArgs是自定義的事件參數類型。在觸發事件時,使用EventArgs的子類對象來作為參數。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女