J'ai une application avec plusieurs formulaires et contrôles dans une fenêtre. L'un d'eux est un contrôle personnalisé qui a deux barres de défilement membres, vertical et horizontal. Maintenant, quand j'appuie sur les touches fléchées du clavier (avec ce contrôle personnalisé sélectionné/in-focus) les barres de défilement obtiennent l'événement Scrollbar.Scroll. Mais j'ai besoin de manipuler les flèches à d'autres fins, seulement la souris pour faire défiler.Comment désactiver le clavier à partir de la barre de défilement dans le contrôle personnalisé
La fonction OnKeyDown du contrôle personnalisé reçoit l'événement uniquement après la mise au point de l'une des deux barres de défilement qui suit le premier trait de touche. Donc, je ne reçois pas la première flèche, ce qui n'est pas bon.
J'ai également essayé d'ajouter un gestionnaire à l'événement Scrollbar.KeyDown. N'a pas fonctionné.
Comment puis-je gérer les flèches pour ne pas faire défiler la vue?
pas de chance, PreviewKeyDown répond également après que la barre de défilement se concentre, ce qui est encore après la première clé! Cependant, je suis en train de faire en sorte que le contrôle de la barre de défilement se concentre sur mes options, sans l'aimer. – kaiserasif
Avez-vous besoin que la barre de défilement soit focalisable? Sinon, vous pouvez le désactiver. – Wildhorn
Je dois faire défiler en utilisant la souris. Donc, ne pouvait pas désactiver. Une correction sur mon commentaire précédent, j'ai utilisé le PreviewKeyDown de la barre de défilement qui est la raison pour laquelle il fallait se concentrer. Le PreviewKeyDown du contrôle personnalisé a fonctionné! Merci. – kaiserasif