événement souris ne pas atteindre UIElement
-
09-10-2019 - |
Question
I possède une grille 6x8 d'objets System.Windows.Controls.Canvas
. La partie supérieure gauche toile ne reçoit pas les événements de la souris alors que tous les autres. J'ai essayé événements OnMouseMove
et OnMouseClick
.
Un objet enfant gère pas l'événement car System.Windows.Media.VisualTreeHelper#GetChildrenCount()
ne montre pas d'enfants. Je ne pouvais pas attraper PreviewOnMouseMove
non plus. Peut-il y avoir un (peut-être transparent) contrôle devant ma toile qui prend priorité?
La solution 2
Enfin trouvé une solution. Chacun des Canvas
es ont Adorner
s. Selon cet article MSDN , adorners recevoir des événements de souris avant l'élément de l'interface utilisateur sous-jacente Est-ce que. Je mets la propriété IsHitTestVisible
de tous mes adorners à false
.
Autres conseils
J'espère que cela vous aide, qui se trouve juste valeur Transparent
à la propriété Background
pour le Canvas
:
Background="Transparent"
Bonne chance!