2010-03-24 3 views
32

J'ai mis des événements de la souris sur une toile comme suitWPF: Canvas Events ne fonctionne pas

MouseUp="CanvasUp" MouseDown="CanvasDown" MouseMove="CanvasMove" 

Mais ceux-ci ne sont actifs que sur les éléments enfants comme des images et Rectangles, mais pas sur l'espace vide. S'il vous plaît me dire comment résoudre

Merci

Répondre

72

Un contrôle sans jeu de couleurs d'arrière-plan (explicitement ou par le biais de styles, etc.) aura par défaut une couleur d'arrière-plan nulle, ce qui le rendra non testable.

Si vous définissez l'arrière-plan « transparent » (ou autre chose que nul ({x:Null})), il sera en mesure de ramasser les événements de souris

+0

Great! Je ne le savais pas. – TalkingCode

+13

Merci pour la réponse, mais quelle décision de conception de STUPID l'équipe de WPF a fait avec cela. – cdiggins

+1

Insane! J'ai essayé toutes sortes de débogage pendant des heures. Merci d'avoir sauvé ma journée –

3

Définissez la couleur d'arrière-plan. Il est par défaut à null.

Utilisez par exemple Background="White".