SendKey à un contrôle par ProcessCmdKey crée une loop infinie
Bonjour,
J'essais de récupérer certaines touches du clavier appuyées dans mon formulaire et envoyer ces touches par SendKey à mon contrôle GridView (Grid de DevExpress).
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
|
Protected Overrides Function ProcessCmdKey(ByRef msg As System.Windows.Forms.Message, _
ByVal keyData As System.Windows.Forms.Keys) As Boolean
If keyData = Keys.PageUp Then
Me.GridView1.Focus()
SendKeys.Send("{PGUP}")
ElseIf keyData = Keys.PageDown Then
Me.GridView1.Focus()
SendKeys.Send("{PGDN}")
End If
Return MyBase.ProcessCmdKey(msg, keyData)
End Function |
Comme vous l'avez peut-être deviné, il y a un problème car la fonction se rappelle elle-même indéfiniement.
Y a-t'il un moyen de désactiver la fonction ProcessCmdKey temporairement, l'équivalent de RemoveHandler et AddHandler?
Si vous avez une autre suggestion, n'hésitez pas.
Merci d'avance.