Wie kann ich Element aus gegebenem Punkt auf Leinwand bekommen?
-
28-09-2019 - |
Frage
ich brauche von bestimmtem Punkt Element von der Leinwand zu bekommen.
Zum Beispiel habe ich Rechteck auf Leinwand, die CanvasLeft und CanvasTop Werte zu einigen Werten setted werden.
Ich whant Element aus Leinwand bekommen, die CanvasLeft und CanvasTop Werte annehmen beispielsweise sind 10 und 40
Ist es möglich?
Danke.
Lösung
Sie können die Elemente eine bestimmte Position finden, indem die VisualTreeHelper verwenden. Es hat ein Verfahren FindElementsInHostCoordinates. Sie müssen ihm einen Wirt, zum Beispiel geben, die Leinwand und die Koordinaten und es gibt eine Liste von UIElements.
Hier ist die Info auf MSDN: http://msdn.microsoft.com/en -US / library / cc838402 (v = VS.95) aspx
Andere Tipps
Code wie folgt es tun soll: -
UIElement elem = VisualTreeHelper.FindElementsInHostCoordinates(new Point(10, 40), myCanvas).FirstOrDefault();