2012-08-04 16 views
10

Temel olarak, ENTER ENTER tuşuna basıldığında bir olayı tetikleyebilmek istiyorum. Bunu zaten denedim: MessageBox hiçbir zaman görünmez. Bunu nasıl yapabilirim?Enter tuşuna bir TextBox'ta ne zaman basıldığını nasıl anlarım?

private void input_KeyDown(object sender, KeyEventArgs e) 
    {       
    if(e.KeyCode== Keys.Enter) 
    { 
     //Your business logic here. 
    }    
    } 

KeyData vs KeyCode ile tek fark KeyCodeKeyCode ile düzenleyiciler kombinasyonunu algılayabilir olmasıdır (örneğin CTRL:

+6

KeyUp'ta bunu yapmak iyi bir fikir olabilir (koşullarınıza bağlı olarak). Bir anahtar serbest bırakıldığında her seferinde bir kez keyUp çağrılır .. ancak anahtar aşağıdayken sürekli tuşa basılır .. –

cevap

19

private void input_KeyDown(object sender, KeyEventArgs e) 
{       
    if(e.KeyData == Keys.Enter) 
    { 
     MessageBox.Show("Pressed enter."); 
    }    
} 
+0

Teşekkürler, bu benim için gerçek sözdizimini bulmak için yeterince faydalıydı. Benim için sözdizimi şuydu: System.Windows.Input kullanarak (e.Key == Key.Enter) // – user2010136

0

Ayrıca yapabilirsiniz ... Bu bir atış ver , Shift + A) burada ihtiyacınız yok.

İlgili konular