2009-11-16 4 views

답변

5

더 나은 이벤트에서 KeyDown입니다. 사용자가 명시 적으로 상자에 입력하거나 다른 구성 요소가 TextBox에 메시지를 보내 사용자가 입력 한 것을 시뮬레이션하면 KeyDown이 실행됩니다. 이것은 설명 된 시나리오에 적합합니다.

반면에 TextChanged 이벤트에 응답하도록 선택하면 텍스트가 변경되는 모든 경우 (사용자 또는 코드별로)에 응답하게됩니다. 즉, 내가 명시 적으로 말하면 이벤트가 발생합니다.

someBox.Text = Environment.NewLine; 
8

은 네는를 keyDown 이벤트 :

if (e.KeyCode == Keys.Enter) 
{ 
    // do stuff 
} 
2

KeyPress 이벤트는이 작동 : 여기에 처리 할 수 ​​

private void textBox1_KeyPress(object sender, KeyPressEventArgs e) 
{ 
    if (e.KeyChar == (char)Keys.Enter) 
    { 
     MessageBox.Show("Enter pressed!"); 
    } 
} 
1

이는 나머지 양식에 따라 다릅니다. 수락 단추가있을 때 (거의) 모든 컨트롤에서 [Enter] 키를 누르면 해당 단추를 텍스트 상자에서 별도로 처리하지 않는 것이 좋습니다.

반대로, 하나 이상의 텍스트 상자를 처리하려면 수용 버튼을 사용하지 마십시오.

관련 문제