/// <summary> 清空指定事件 </summary> public static void ClearEvent(this IGroupRelectbject obj, string eventName) { Type t = obj.Value.GetType(); var ev = t.GetEvent(eventName); var deles = obj.As <IGroupRelectbject>().GetObjectEventList(eventName); // Todo :执行委托方法 foreach (var item in deles) { ev.RemoveEventHandler(obj, item); } }
/// <summary> 执行指定事件的所有委托 </summary> public static void InvokeEvent(this IGroupRelectbject obj, string eventName, params object[] parameters) { var deles = obj.As <IGroupRelectbject>().GetObjectEventList(eventName); if (deles == null) { return; } // Todo :执行委托方法 foreach (var item in deles) { item.DynamicInvoke(parameters); } }