溫馨提示×

c# lambda如何處理事件訂閱

c#
小樊
112
2024-06-25 23:28:53
欄目: 編程語言

在C#中,可以使用lambda表達式來處理事件訂閱。以下是一個示例:

public class EventPublisher
{
    public event EventHandler MyEvent;

    public void DoSomething()
    {
        // 觸發事件
        MyEvent?.Invoke(this, EventArgs.Empty);
    }
}

public class EventSubscriber
{
    public EventSubscriber(EventPublisher publisher)
    {
        // 使用lambda表達式訂閱事件
        publisher.MyEvent += (sender, e) =>
        {
            Console.WriteLine("Event received!");
        };
    }
}

class Program
{
    static void Main()
    {
        EventPublisher publisher = new EventPublisher();
        EventSubscriber subscriber = new EventSubscriber(publisher);

        publisher.DoSomething(); // 輸出:Event received!
    }
}

在上面的示例中,EventPublisher 類有一個事件 MyEvent,EventSubscriber 類使用lambda表達式訂閱了這個事件。當 DoSomething 方法被調用時,事件會被觸發并lambda表達式中的代碼會被執行。

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