https://www.cnblogs.com/sjqq/p/6917497.html(可以看看)
委托:通俗一点就是把方法当作参数传递。举个例子:在特定的时刻,传输数据,在这个时刻发生了一件事,需要在另一个界面显示出来就用委托
public delegate void NotifyPlanChanged(List<TPlan> plan);(传输的数据是一个list)
public static event NotifyPlanChanged OnPlanChanged;(转到事件上去)
if(OnPlanChanged!=null)
{
OnPlanChanged.Invoke(PlanList);(planlist的类型就是list)
}
PlanManager.OnPlanChanged += UpdateItemUI(需要用的界面)
PlanManager.OnPlanChanged -= UpdateItemUI
private void UpdateItemUI(List<TPlan> PlanList)(就是上面的plan数据)
{
}
什么叫委托:把一个方法当做参数传给另一个方法,这就是委托。
什么叫事件:通俗一点就是委托的一个实例。
委托和事件的区别:事件是特殊的委托,需要触发器来触发,(+=,-=),其他委托和事件完全一样