1 // 이벤트.cs
 2 using System;
 3 
 4 namespace 이벤트
 5 {
 6     //이벤트 생성을 위한 대리자 하나 생성
 7     public delegate void EventHandler();
 8 
 9     public class Button
10     {
11         //이벤트 선언 : click 이벤트 생성 : 이벤트 필드
12         public event EventHandler Click;
13         //이벤트 발생 메서드 : OnClick EventHandler(핸들러) 생성
14         public void OnClick()
15         {
16             if (Click != null) // 이벤트에 등록된 값이 있다면 실행
17             {
18                 Click();
19             }
20         }
21     }
22 
23     public class Hello
24     {
25         public static void Hi1(){Console.WriteLine("안녕하세요");}
26         public static void Hi2(){Console.WriteLine("반갑습니다");}
27     }
28 
29     public class CMain
30     {
31         public static void Main()
32         {
33             Button button = new Button();
34 
35             //이벤트에 메서드 설정
36             button.Click += new EventHandler(Hello.Hi1);
37             button.Click += new EventHandler(Hello.Hi2);
38 
39             //이벤트 발생
40             button.OnClick();
41         }
42     }
43 }