WPF--关于Action事件小结
WPF--关于Action事件小结
1.需要类实例去调用事件建立订阅关系
public event Action<int, object> MaintainEvent;
new GP1().MaintainEvent += NormalCmdAction;
2.static用处--在不便实例的时候,可以直接由类调用
public static event Action<int, object> MaintainEvent;
GP1.MaintainEvent += NormalCmdAction;
小结:事件是自己的,好方法是别人的,在别人家里签下订阅关系,在自己这里调用或者其他处调用
补充:Action基础用法
using System; namespace ActionExample
{ public class MyClass { // 定义一个具有两个参数的Action事件 public event Action<int, string> MyEvent; // 触发事件的方法 public void TriggerEvent(int arg1, string arg2) { MyEvent?.Invoke(arg1, arg2); } } class Program { static void Main(string[] args) { MyClass obj = new MyClass(); // 订阅事件处理程序 obj.MyEvent += HandleEvent; // 触发事件 obj.TriggerEvent(100, "Hello"); } // 处理事件的方法 private static void HandleEvent(int arg1, string arg2) { Console.WriteLine($"事件被触发了,参数1:{arg1}, 参数2:{arg2}"); } }
}
在上面的示例中,MyClass
类定义了一个具有两个参数(int
和string
类型)的Action事件MyEvent
,并在TriggerEvent
方法中触发该事件。在Main
方法中,我们创建了一个MyClass
的实例,并使用+=
运算符将HandleEvent
方法订阅到MyEvent
事件上。最后,我们调用TriggerEvent
方法来触发事件,并传递两个参数。当事件被触发时,HandleEvent
方法将被调用,输出事件的参数值。