c# sender在泛型事件中如何应用

avatar
作者
猴君
阅读量:0

在C#中,在泛型事件中,sender参数通常用于指定事件的发送者。sender参数的类型通常是泛型类型的类型参数。以下是一个示例:

public class EventPublisher<T> {     public event EventHandler<T> CustomEvent;      public void RaiseCustomEvent(T data)     {         OnCustomEvent(data);     }      protected virtual void OnCustomEvent(T data)     {         CustomEvent?.Invoke(this, data);     } }  public class EventSubscriber {     public EventSubscriber()     {         var publisher = new EventPublisher<int>();         publisher.CustomEvent += OnCustomEvent;         publisher.RaiseCustomEvent(10);     }      private void OnCustomEvent(object sender, int data)     {         Console.WriteLine($"Received event from {sender}, data: {data}");     } } 

在上面的示例中,EventPublisher<T>类定义了一个泛型事件CustomEvent,并在RaiseCustomEvent方法中引发事件。在EventSubscriber类中,我们创建了一个EventPublisher<int>实例,并订阅了CustomEvent事件。在事件处理程序OnCustomEvent中,我们使用sender参数来获取事件的发送者,并输出事件的数据。

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!