在C#中,如果想在EventHandler中添加自定义参数,可以通过自定义一个EventArgs类来实现。以下是一个示例:
using System;
public class CustomEventArgs : EventArgs
{
public string CustomParameter { get; set; }
public CustomEventArgs(string customParameter)
{
CustomParameter = customParameter;
}
}
public class MyClass
{
public event EventHandler<CustomEventArgs> CustomEvent;
public void OnCustomEvent(string customParameter)
{
CustomEvent?.Invoke(this, new CustomEventArgs(customParameter));
}
}
public class Program
{
public static void Main()
{
MyClass myClass = new MyClass();
myClass.CustomEvent += HandleCustomEvent;
myClass.OnCustomEvent("Hello, World!");
}
public static void HandleCustomEvent(object sender, CustomEventArgs e)
{
Console.WriteLine("Custom Event Handler invoked with parameter: " + e.CustomParameter);
}
}
在上面的示例中,自定义了一个CustomEventArgs类,其中包含一个CustomParameter属性用于存储自定义参数。然后在MyClass类中声明了一个EventHandler事件,并将其泛型参数指定为CustomEventArgs。在触发事件时,通过new CustomEventArgs(customParameter)来创建一个CustomEventArgs对象,并将其传递给事件的触发方法Invoke。在事件处理程序HandleCustomEvent中,可以通过e.CustomParameter来访问传递的自定义参数。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,请发送邮件至 55@qq.com 举报,一经查实,本站将立刻删除。转转请注明出处:https://www.szhjjp.com/n/907251.html