J'ai essayé ce qui suit :
private void Form1_KeyDown(object sender, System.Windows.Forms.KeyEventArgs e)
{
if ((Keys) e.KeyValue == Keys.Escape)
this.Close();
}
Mais ça ne marche pas.
Puis j'ai essayé ça :
protected override void OnKeyDown(KeyEventArgs e)
{
base.OnKeyDown(e);
if (e.KeyCode == Keys.Escape)
this.Close();
}
Et toujours rien ne fonctionne.
Le KeyPreview des propriétés de mon formulaire Windows Forms est réglé sur true... Qu'est-ce que je fais de travers ?
1 votes
Avez-vous essayé de mettre un point d'arrêt dans ces méthodes ? Le gestionnaire d'événements se déclenche-t-il ?
1 votes
Ne nommez pas votre bouton d'annulation comme la propriété du formulaire "CancelButton". Sinon, il semble que vous ne puissiez pas définir le bouton d'annulation.
0 votes
@SteveDanner, l'événement ne se déclenche pas. Il manque probablement la déclaration dans InitializeComponent().
0 votes
Je pense que la raison pour laquelle cela ne fonctionne pas est que d'autres contrôles dans le formulaire ont obtenu le focus...