一:注册委托和事件
1.注册委托:
//action委托
public Action<object> DoExecute { get; set; }
public delegate void ReceiveDelegate(byte[] str);
2.注册事件:
//EventHandler事件
public event EventHandler? CanExecuteChanged;
public static event ReceiveDelegate ReceiveDelegateEvent;
二:初始化委托和事件
1.初始化委托
DoExecute = new Action<object>(obj =>
{
//执行方法函数
})
2.初始化事件
//可以同时初始化多个事件,使用+=添加。
ReceiveDelegateEvent += new ReceiveDelegate((byte[] str) =>
{
// 执行方法
Received(str);
});
三:定义事件触发函数
注意:因为委托可以在类外调用,因此委托无需在类内单独定义触发函数
1.事件触发函数
public static void OnEventHandler(byte[] str)
{
ReceiveDelegateEvent(str);
}
四:在另外类中调用委托或事件触发函数
1.调用委托
DoExecute?.Invoke(parameter);
2.调用事件触发函数
OnEventHandler("执行事件");