/// <summary> /// Removes the event handler /// </summary> /// <param name="handler">Handler</param> /// <param name="eventName">Event name</param> public void RemoveEventHandler(EventHandler <TEventArgs> handler, [CallerMemberName] string eventName = "") { if (IsNullOrWhiteSpace(eventName)) { throw new ArgumentNullException(nameof(eventName)); } if (handler is null) { throw new ArgumentNullException(nameof(handler)); } EventManagerService.RemoveEventHandler(eventName, handler.Target, handler.GetMethodInfo(), _eventHandlers); }
/// <summary> /// Executes the event /// </summary> /// <param name="sender">Sender</param> /// <param name="eventArgs">Event arguments</param> /// <param name="eventName">Event name</param> public void HandleEvent(object sender, TEventArgs eventArgs, string eventName) => EventManagerService.HandleEvent(eventName, sender, eventArgs, _eventHandlers);