“KeyPress” de l'événement pour WinForms zone de texte est manquant?

Je suis en train d'ajouter une "Touche" de l'événement dans une zone de texte (WinForm)

this.textBox1.KeyPress += new System.Windows.Forms.KeyPressEventHandler(CheckKeys);

et voici l'intérieur de la '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 la zone de texte est mise en avant et la touche "Enter" a été pressé, il se passera quelque chose...

Cependant, mon ordinateur ne trouve pas le "KeyPress" événement.
Est-il quelque chose de mal 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 bien...

  • Avez-vous essayé de regarder pour KeyDown?
  • Ce travail - êtes-vous sûr que vous êtes abonnés à votre CheckKeys gestionnaire au bon endroit? Qu'advient-il si vous mettez MessageBox.Show(e.KeyChar.ToString()) dans votre gestionnaire d' - t-il attraper tous les événements?
  • pas de travail. J'ai essayé de créer un événement semblable à cliquer sur un bouton en appuyant sur enter.
  • Erreur est survenue: 'Système.De Windows.Les contrôles.Zone de texte " ne contient pas une définition pour 'Touche' et aucune méthode d'extension 'Touche' acceptant un premier argument de type 'System.De Windows.Les contrôles.Zone de texte' a pu être trouvé (vous manque une directive using ou une référence d'assembly?)
  • Vous avez obtenu la mauvaise zone de texte en quelque sorte. Vous êtes à l'aide de la WPF l'un (le Système.De Windows.De contrôle), de ne pas les WinForms un. Vérifiez votre aide de directives, ou la force de votre zone de texte pour le Système.De Windows.Les formulaires.Zone de texte
InformationsquelleAutor abramlimpin | 2010-04-03