Advertisement
Guest User

Untitled

a guest
Jul 26th, 2016
50
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.54 KB | None | 0 0
  1. internal class Events_Example_A
  2. {
  3. private EventHandler _myDelegate;
  4.  
  5. public event EventHandler MyEvent
  6. {
  7. add
  8. {
  9. _myDelegate += value;
  10. Console.WriteLine("Custom event accessor: add");
  11. }
  12. remove
  13. {
  14. _myDelegate -= value;
  15. Console.WriteLine("Custom event accessor: remove");
  16. }
  17. }
  18. }
  19.  
  20. internal class Events_Example_B
  21. {
  22. public virtual event EventHandler MyEvent;
  23. }
  24.  
  25. internal class Events_Example_B_Implementation : Events_Example_B
  26. {
  27. public override event EventHandler MyEvent
  28. {
  29. add
  30. {
  31. Console.WriteLine("B event's implementation - add");
  32. }
  33.  
  34. remove
  35. {
  36. Console.WriteLine("B event's implementation - remove");
  37. }
  38. }
  39. }
  40.  
  41. internal class Tester
  42. {
  43. private Events_Example_A _a;
  44. private Events_Example_B_Implementation _b;
  45.  
  46. public Tester()
  47. {
  48. _a = new Events_Example_A();
  49. _b = new Events_Example_B_Implementation();
  50. }
  51.  
  52. public void Run()
  53. {
  54. _a.MyEvent += TargetMethod;
  55. _b.MyEvent += TargetMethod;
  56. }
  57.  
  58. private void TargetMethod(object sender, EventArgs e)
  59. {
  60. Console.WriteLine("Target method...");
  61. }
  62. }
  63.  
  64.  
  65. private static void Main(string[] args)
  66. {
  67. Tester t = new Tester();
  68. t.Run();
  69. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement