Bonjour à tous et toutes,
Voilà, pour le fun, je m'amuse à me faire un petit casse briques en silverlight, question de se détendre un peu.
Je désire faire simple et jouer directement avec la souris, sans support du clavier.
J'ai donc un Canvas qui représente l'écran de jeu, qui se peuple de quelques briques (des UserControl qui sont en fait de simples Canvas dans lequel il y a un rectangle) et d'une raquette pour le joueur.
Sur ce canvas, je m'abonne à l'événement MouseMove afin de récupérer la position de la souris pour placer automatiquement la raquette.
Et là, surprise, l'événement MouseMove ne fonctionne que lorsque je passe la souris sur les briques. Dès que je passe la souris sur le canvas auquel je suis abonné, rien ne se passe. Par contre, si je passe sur un enfant de ce canvas (les briques) auxquelles je ne me suis pas abonné, là, l'événement remonte.
Bref, j'ai l'impression que l'interception de l'événement a été perdu pour l'élément désiré (le canvas) mais qu'il s'est propagé à ses enfants...
Quelqu'un aurait une idée ? J'imagine que les routed events y sont pour quelque chose mais je ne trouve pas encore de solution.
D'avance merci.
Partager