// Wrap the event in a protected virtual method // to enable derived classes to raise the event. protected virtual void OnRaiseSampleEvent() { // Raise the event by using the () operator. MagicEvent?.Invoke(this, new myClass(1996, "misha")); }