

public delegate void TestDelegate(); // delegate declaration public interface ITestInterface { event TestDelegate TestEvent; void FireAway(); } public class TestClass : ITestInterface { public event TestDelegate TestEvent; public void FireAway() { if (TestEvent != null) { TestEvent(); } } } public class MainClass { static private void F() { System.Console.WriteLine("This is called when the event fires."); } static void Main() { ITestInterface i = new