문제

특정 InputForm의 경우 키보드로 입력을 할 수 있도록하고 싶습니다. KeyPressed와 KeyUp을 통해 키를 읽는 방법을 알고 있지만 문제는 컨트롤이 초점을 맞추고 사용자가 Enter 키를 누르면 A CLICK 이벤트를 수신한다는 것입니다. 그 행동을 막을 수 있습니까? 아니면 클릭 이벤트가 마우스 또는 키보드로 발사되었는지 알 수 있습니까?

도움이 되었습니까?

해결책

이것이 도움이됩니까? 에서 Microsoft Knowledge Base

버튼의 코드를 button.click ()에서 button.mouseclick ()로 이동하십시오.

다른 팁

당신이 원하는 상황과 정확한 행동을 설명 할 수 있다면 이것은 더 쉬울 것입니다 ... :)

당신은 설정할 수 있습니다 :

Form.KeyPreview = True

이렇게하면 주요 이벤트가 먼저 양식으로 보낸 다음 컨트롤로 보냅니다. 이를 통해 양식에서 주요 이벤트를 포착하고 '취소'할 수있는 기회를 제공합니다.

e.Handled = True

더 많은 정보

또한 양식에 대한 acceptbutton을 설정하지 않았는지 확인하십시오!

키보드 이벤트를 듣고 키를 필터링 할 수도 있습니다.

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