public class MyEventClass { public event EventHandler<MyEventArgs> MyEvent; public void RaiseEvent() { if (MyEvent != null) { MyEvent(this, new MyEventArgs("hello")); } } } public class MyEventArgs : EventArgs { public MyEventArgs(string message) { this.Message = message; } public string Message { get; } } MyEventClass myObject = new MyEventClass(); myObject.MyEvent += MyEventHandler; myObject.RaiseEvent(); public void MyEventHandler(object sender, MyEventArgs e) { Console.WriteLine(e.Message); }