[c#] Windows Forms-Enter 키를 누르면 제출 버튼이 활성화됩니까?

양식의 아무 곳에서나 Enter 키 누르기를 캡처하고 강제로 제출 단추 이벤트를 발생시킬 수 있습니까?



답변

FormAcceptButton속성을의 Buttons 중 하나로 설정 Form하면 기본적으로 해당 동작을 얻을 수 있습니다.

그렇지 않으면 KeyPreview속성을 trueon으로 설정 Form하고 KeyDown이벤트를 처리합니다 . Enter키를 확인 하고 필요한 조치를 취할 수 있습니다 .


답변

private void textBox_KeyDown(object sender, KeyEventArgs e)
{
    if (e.KeyCode == Keys.Enter)
        button.PerformClick();
}


답변

폼의 속성에서 “AcceptButton”으로 단추를 지정할 수 있으며, 그러면 폼에서 “Enter”키 누름을 포착하여 해당 컨트롤로 라우팅합니다.

방법 : 디자이너를 사용하여 Windows Forms 단추를 수락 단추로 지정을 참조 하고 설명하는 몇 가지 예외 (여러 줄 텍스트 상자 등)에 유의하십시오.


답변

이전에 언급 한 바와 같이, 양식의 설정 AcceptButton의 의 버튼 중 하나에 속성을하고 SET DialogResult를의 해당 버튼의 속성 DialogResult.OK을 대화 수락 또는 기각 된 경우 알고 발신자의 순서.


답변

KeyUp이벤트를 구독 할 수 있습니다 TextBox.

private void txtInput_KeyUp(object sender, KeyEventArgs e)
{
    if (e.KeyCode == Keys.Enter)
       DoSomething();
}


답변

Form에는 키 누르기를 가로채는 데 사용할 수 있는 KeyPreview 속성이 있습니다.


답변

간단히 사용

this.Form.DefaultButton = MyButton.UniqueID;  

** ‘MyButton’대신 버튼 ID를 입력합니다.