Je suis en train d'ajouter un événement « KeyPress » dans une zone de texte (WinForm)L'événement "KeyPress" pour la zone de texte WinForms est manquant?
this.textBox1.KeyPress += new System.Windows.Forms.KeyPressEventHandler(CheckKeys);
et est ici à l'intérieur des « CheckKeys »:
private void CheckKeys(object sender, System.Windows.Forms.KeyPressEventArgs e)
{
if (e.KeyChar == (char)13)
{
// Enter is pressed - do something
}
}
L'idée ici est qu'une fois une zone de texte est en focus et le bouton 'Entrée' a été pressé, quelque chose va arriver ...
Cependant, mon appareil ne trouve pas l'événement 'KeyPress'. Y a-t-il un problème avec mes codes?
MISE À JOUR:
J'ai aussi essayé de mettre KeyDown au lieu de KeyPress:
private void textBox1_KeyDown(object sender, System.Windows.Input.KeyEventArgs e)
{
if (e.Key == Key.Return)
// Enter is pressed - do something
}
}
ne fonctionne toujours pas si ...
Avez-vous essayé de chercher KeyDown? – Chris
Cela devrait fonctionner - Êtes-vous sûr de vous abonner à votre gestionnaire CheckKeys au bon endroit? Que se passe-t-il si vous mettez MessageBox.Show (e.KeyChar.ToString()) dans votre gestionnaire - capte-t-il des événements? – pduncan
@Chris: ne fonctionne pas. J'essayais de créer un événement similaire à cliquer sur un bouton en appuyant sur Entrée. – abramlimpin