Events.cs 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. using System;
  2. namespace Wayne.Lib
  3. {
  4. /// <summary>
  5. /// Contains extension methods for firing events.
  6. /// </summary>
  7. public static class Events
  8. {
  9. /// <summary>
  10. /// Fires the event if it is not null.
  11. /// </summary>
  12. /// <typeparam name="TEventArgs"></typeparam>
  13. /// <param name="eventHandler"></param>
  14. /// <param name="sender"></param>
  15. /// <param name="eventArgs"></param>
  16. public static void Fire<TEventArgs>(this EventHandler<TEventArgs> eventHandler, object sender, TEventArgs eventArgs)
  17. where TEventArgs : EventArgs
  18. {
  19. if (eventHandler != null)
  20. {
  21. eventHandler(sender, eventArgs);
  22. }
  23. }
  24. /// <summary>
  25. /// Fires the event if it is not null.
  26. /// </summary>
  27. /// <param name="eventHandler"></param>
  28. /// <param name="sender"></param>
  29. /// <param name="eventArgs"></param>
  30. public static void Fire(this EventHandler eventHandler, object sender, EventArgs eventArgs)
  31. {
  32. if (eventHandler != null)
  33. {
  34. eventHandler(sender, eventArgs);
  35. }
  36. }
  37. }
  38. }