using System; namespace ConsoleApplication1 { class Program { static void Main(string[] args) { var demo = new EventDemoClass(); demo.GetName += demo_GetName; demo.GetNameFromConsoleApp(); Console.Read(); } static string demo_GetName(object sender, EventArgs e) { return "Seth Rowe"; } } public delegate string GetNameEventHandler(object sender, EventArgs e); public class EventDemoClass { public event GetNameEventHandler GetName; public void GetNameFromConsoleApp() { Console.WriteLine(OnGetName(EventArgs.Empty)); } protected virtual string OnGetName(EventArgs e) { if (GetName != null) return GetName(this, e); else return string.Empty; } } } }