문제

코드를 매우 복잡하게 만들지 않고 Winform 애플리케이션에서 사용자 클릭을 캡처하는 방법은 무엇입니까? AOP가 답이 있습니까? 계측을 추적하는 방법?

도움이 되었습니까?

해결책

이것은 실제 요구 사항에 따라 다릅니다.

간단한/샘플/프로토 타입 winforms 앱의 경우 기본을 제안합니다. Winforms 이벤트 처리기, 핸들러 방법에서 코드 (너무 무겁지 않음). 코드가 무겁고 하드 비즈니스 규칙을 포함하고 양식과 상호 작용하지 않으면 해당 코드를 다른 클래스로 이동하여 이벤트 핸들러에서 호출하는 것이 가장 좋습니다.

측면 지향 프로그래밍 이 미래를 취합니다. 일반적으로 대규모 프로젝트에 가장 잘 적용됩니다. 양식 요소에 대한 이벤트 핸들러가 여전히 필요합니다 (제어 기반 이벤트 처리기를 고수하는 것이 좋습니다. 고유 한 글로벌 이벤트 처리 시설을 만들려고하지 마십시오). 명령 패턴 Gangoffour에서). 그런 다음 해당 명령 개체는 응용 프로그램의 어느 곳에서나 호출 할 수 있습니다. 계측을 원한다면 계측은 Winforms 이벤트가 아닌 해당 명령 개체에 있어야합니다. 당신은 활용할 수 있습니다 제어의 역전 컨테이너와 같은 성 윈저 응용 프로그램을 전혀 변경하지 않고 명령에 로그/감사를 주입하려면 인터셉터 패턴. 다음은 David Hayden의 예입니다

다른 팁

WinForms에서 클릭을 캡처하는 일반적인 방법은 처리입니다. Control.mouseclick. 당신은 또한 볼 수 있습니다 제어 .mousedown 그리고 컨트롤 더 자세한 정보를 원한다면.

당신이하려는 일에 대한 자세한 내용을 제공한다면, 우리는 아마도 더 목표로하는 답변을 만들 수 있습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top