2010-01-04 23 views
7

Mam Ellipse na Canvas i robię Hit Testowanie na jej temat. Za każdym razem, gdy klikam skok Ellipse, test przechodzi. Jeśli kliknę w środku Ellipse, test nie powiedzie się. To jest dobre!Hit Test w WPF

Po tym, jak wypełniłem elipsę w następujący sposób: myEllipse.Fill = new SolidColorBrush(Colors.Blue);, pasei testowych również po kliknięciu w środku Ellipse.

Jak mogę to wyłączyć? (nawet gdy Ellipse jest wypełniony, test zakończy się niepowodzeniem, gdy kliknę w środku) Dzięki!

Odpowiedz

8

Jeśli zrobić własne badania trafień (patrz Hit Testing in the Visual Layer Szczegółowe informacje na temat, jak to zrobić), powinieneś być w stanie sprawdzić IntersectionDetail z GeometryHitTestResult jest IntersectionDetail.Intersects, a nie IntersectionDetail.FullyContains.

+0

Łącze do 4.5 nie wyświetla się (?) ... ale 4.0 działa. [Hit Testing w warstwie wizualnej] (https://msdn.microsoft.com/en-us/library/vstudio/ms752097%28v=vs.100%29.aspx) – OmegaMan

0

Nie możesz umieścić mniejszej elipsy na środku i ustawić IsHitTestVisible = "false"?

+1

Nie zapobiegnie to trafieniu w dolną elipsę , IsHitTestVisible = false powoduje, że ten element jest niewidoczny, aby trafić w testowanie, ale nie ma wpływu na elementy poniżej elementu, którego dotyczy problem. –