방법: IntelliSense를 사용하여 이벤트 후크(C#)
업데이트: 2007년 11월
코드 편집기에서 IntelliSense를 사용하면 메서드(이벤트 처리기)를 이벤트 필드에 후크할 수 있습니다.
.cs 파일에서 이벤트 필드 뒤에 += 연산자를 입력하면 Tab 키를 누르는 옵션이 나타나고 Tab 키를 누르면 이벤트를 처리하는 메서드를 가리키는 대리자의 새 인스턴스가 삽입됩니다.
Tab 키를 누르면 IntelliSense는 자동으로 문을 완성하고 이벤트 처리기 참조를 선택된 텍스트로 코드 편집기에 표시합니다. 이벤트 자동 후크를 완성하기 위해, IntelliSense에서는 Tab 키를 다시 눌러 이벤트 처리기에 대한 빈 스텁을 만들라는 메시지를 표시합니다.
참고: |
---|
IntelliSense에서 만든 새 대리자가 기존 이벤트 처리기를 참조하는 경우 IntelliSense는 이 정보를 도구 설명에 표시합니다. 그러면 사용자는 텍스트가 이미 코드 편집기에서 선택된 것처럼 이 참조를 수정할 수 있습니다. 그렇지 않으면 이때 이벤트 자동 후크가 완성됩니다. |
Tab 키를 누르면 IntelliSense는 올바른 시그니처를 사용하여 메서드에 스텁 아웃하고 이벤트 처리기의 본문에 커서를 둡니다.
참고: |
---|
보기 메뉴에서 뒤로 탐색 명령(Ctrl+-)을 사용하면 이벤트 후크 문으로 다시 이동할 수 있습니다. |
다음 작업에서는 IntelliSense가 button1_Click 이벤트 처리기를 button1.Click 이벤트 필드에 자동으로 후크하는 방법을 보여 줍니다.
C# 이벤트에 후크하려면
C# Windows 응용 프로그램을 만듭니다.
도구 상자의 Windows Forms 탭에서 사용자의 폼으로 Button 컨트롤을 끌어 온 다음 코드 보기 명령을 사용하여 코드 편집기에서 Form1.cs를 엽니다.
폼 생성자에서 이벤트 필드 button1.Click을 입력한 다음 += 연산자를 입력합니다. 예를 들면 다음과 같습니다.
this.button1.Click +=
Tab 키를 누르면 이벤트가 자동으로 후크된다는 메시지가 나타납니다.
Tab 키를 누릅니다.
이벤트 처리기 button1_Click에 대한 참조를 사용하여 EventHandler 대리자의 새 인스턴스가 만들어집니다.
this.button1.Click +=new EventHandler(button1_Click);
button1_Click이 없으므로 이 메서드를 만들 수 있도록 Tab 키를 다시 누르라는 메시지가 나타납니다.
Tab 키를 누릅니다.
button1_Click() 메서드가 만들어진 다음 사용자가 즉시 이 이벤트 처리기에 코드를 계속 추가할 수 있도록 커서가 본문에 놓입니다.
private void button1_Click(object sender, EventArgs e) { }