2014-10-30 2 views
1

누군가가 성가신 기본 자동 이벤트 처리기 함수를 작성했는지 궁금합니다. 예를 들어, 두 번 클릭 이벤트에 대한 이벤트 탭 (번개 탭)을 두 번 클릭하여 버튼 이벤트를 자동으로 생성합니다. Visual Studio는 Form1.cs 파일에서 이벤트 핸들러를 자동으로 생성합니다. 그러나이 이벤트 처리기를 다른 파일 (동일한 개체와 동일한 네임 스페이스)로 이동하려면 ButtonEvents.cs (부분 Form1 클래스)를 호출한다고 가정 해 봅시다. Visual Studio는 Form1.cs 파일에 다른 빈 이벤트 처리기를 자동으로 생성합니다. Visual Studio에서는이 이벤트 핸들러가 이미 존재하지만 컴파일 할 때 오류가 발생하므로이 기본 이벤트 핸들러를 삭제해야 할 때마다 -이 작업은 매우 성가신 일입니다 ...기본 비주얼 스튜디오는 항상 Form1.cs와 같은 파일에 이벤트 처리기를 만듭니다. 위치를 변경하는 방법은 무엇입니까?

Thank You Guys.

+0

왜 자동 생성을 사용하는 대신 자신 만의 설정을 사용 하시겠습니까? – C4u

+0

원하는 세계에서 이벤트를 구독하는 코드는 이벤트 처리기가 어떤 개체에 있는지 어떻게 알 수 있습니까? 아마도 Designer의 접근 방식의 가장 큰 장점은 초기화를 수행하는 코드가 포함 된 객체의 이벤트를 구독하므로 이벤트 핸들러가 포함 된 객체 참조를 파악하고 이해하는 것이 간단하다는 것입니다. –

+0

내가 이것을 사용하는 것이 더 빠른 방법이라고 생각하기 때문에 나는 자동을 사용한다. 나는 다른 파일로 갈 필요가 없다. 손으로 함수 이름을 입력 할 필요가 없다. ... 나는 50 개의 이벤트를 사용하여 똑같은 방법으로, 나는 50 개 장소를 찾아야 만한다. 나는 왜 내가 자동적으로 사용하는지 모르겠다. 습관 일 뿐이다 ... –

답변

0

컨트롤의 이벤트를 처리하려는 모든 메서드를 설정할 수 있습니다. 예를 들면 : 당신이 당신의 버튼 편집기 더블 클릭은 AnotherClass.GreetingBtn_Click 방법을 보여줍니다 때 원하는 경우

Button1.Click += new EventHandler(AnotherClass.GreetingBtn_Click); 

, 나는 그것에 대해 잘 모르겠어요 (YourForm.Designer 파일에 버튼의 이벤트 핸들러를 변경하려고).

+1

하지만 같은 부분 클래스에 있다면 이해해야한다고 생각합니다. 다른 파일에있을 수 있습니다 ... –

관련 문제