Ceci est une ancienne révision du document !
Capture des touches non affichable dans un TextBox
Généralement, c'est l'événement KeyPress
qui s'en occupe. Mais comme le TextBox ne s'occupe que des caractères alphanumériques, il faut utiliser l'événement PreviewKeyDown
.
KeyDown, KeyPress, KeyUp
Mise en application sur un TextBox
et NumericUpDown
.
KeyDown
: événement qui se déclenche au moment où la touche est enfoncée.
La lecture des attributs Text
ou Value
ne prend pas en compte le nouveau caractère. Le paramètre e
de type KeyEventArgs
permet de savoir précisément la touche du clavier enfoncée via l'énumération Keys
(e.KeyCode
) et permet ainsi de distinguer la pression de la touche 3 du clavier alphanumérique et la touche 3 du pavé numérique.
KeyPress
: événement qui se déclenche à chaque fois qu'une touche est insérée dans leTextBox
.
Les attributs Text
ou Value
ne possèdent pas le nouveau caractère. Le paramètre e
de type KeyPressEventArgs
contient la valeur de la touche (e.KeyChar
) et non plus la touche. Donc, plus de distinction entre la touche 3 du clavier alphanumérique et la touche 3 du pavé numérique.
La touche e.KeyChar
est définie par exemple par : (char)Keys.Delete
.
KeyUp
: comme l'événementKeyDown
sauf que les attributsText
ouValue
prennent en compte le nouveau caractère.