C#언어 불필요한 이벤트 메서드 함수 제거 방법

2020. 9. 29. 15:18 컴퓨터/프로그래밍

C#언어 이벤트 핸들러 제거 방법

C#을 학습하고 있는데요, 윈도우 폼에 컨트롤을 배치하고 이벤트를 처리하는 메서드 함수를 작성했는데, 필요 없다고 그냥 지워 버리면 에러가 발생하네요. 실행은 돼도 디자이너가 열리지 않습니다. 아마도 디자이너가 참조할 이벤트 메서드 함수가 없어져서 문제가 되는 것 같은데요, 컨트롤이 필요 없다면 컨트롤과 함께 함수도 같이 제거하면 되지만, 이벤트 처리 함수만 삭제하려면 어떻게 해야 할까요?

이벤트 메서드 함수보다는 이벤트 핸들러라고 하는 것이 더 친숙한데요, C# 책에서는 이벤트 메서드 함수 또는 이벤트 메서드로 많이 사용하는 것 같습니다.

델파이에서는 Save 메뉴를 실행할 때 마다 내용이 없는 비어있는 이벤트 메서드 함수 모두를 자동으로 제거되는데요, C#에서는 자동으로 제거되지 않네요. 요건 좀 불편합니다.

C#에서는 소스 코드에서 이벤트 메서드 함수를 삭제하기 전에 조금 수고스럽더라도 속성 창에서 함수 지정을 먼저 제거해야 합니다.

  • 속성 창의 메서드 항목에서 마우스 오른쪽 버튼을 클릭 후 "다시 설정(R)" 메뉴를 실행합니다.
    또는 함수 이름을 지워도 됩니다.
  • 속성 창에는 함수 이름이 지워졌다면 소스코드에서 함수를 제거합니다.
  • 혹시 다른 컨트록에서 사용할 수 있으므로 함수를 제거한 후에 디자이너를 호출해 봅니다. 이상 없이 열린다면 O.K.
 

자, 이 방법대로 불필요한 이벤트 메서드 함수를 제거해 보겠습니다.

▲ 컨트롤을 선택하고 속성 창에서 이벤트 메서드 함수 이름을 지우거나 팝업 메뉴에서 "다시 설정(R)" 메뉴를 실행합니다.

▲ 이제 소스 코드에서 함수를 모두 삭제합니다.

만일 여러 개의 컨트롤에 있는 불필요한 메서드 함수도 역시 같은 방법으로 함수 내용을 비우고 디자인에서 Ctrl-마우스 클릭으로 컨트롤을 여러 개 선택한 후 "다시 설정(R)" 메뉴로 제거할 수 있습니다.

이 댓글을 비밀 댓글로

티스토리 로그인이 풀리면 여기를 클릭하세요.

error: Content is protected !!