2010-11-20 14 views
0

Gibt es eine Möglichkeit zu wissen, dass FrameworkElement auf dem Bildschirm gerendert wurde. Beispielsweise. Ich habe zwei Rechtecke, und eine andere überlappt. Aber ich bin nicht sicher über "wie viel" man sich überlagert.ist FrameworkElement gerendert oder nicht?

Also muss ich wissen, ist Benutzer wird beide Rechtecke sehen, oder wird nur eins zu sehen, oder wird man vollständig und teilweise sehen?

Antwort

1

Es hängt alles davon ab, welche Art von übergeordneten Container es ist, wenn beide Rechtecke innerhalb StackPanel dann nicht sind, müssen Sie entweder einen benutzerdefinierten Container erstellen oder Leinwand als übergeordnetes dieser Rechtecke verwenden.

Dann können Sie LocalToScreen oder ähnliche Methoden erhalten, um ihre absoluten Positionen im Vergleich zum Bildschirm oder oberen Elternfenster zu erhalten und herauszufinden, ob sie sich überlappen oder nicht.

+0

Ja, es ist normale Lösung. Aber es ist nicht zu schnell. In Bezug auf die Geschwindigkeit. Ich will nur wissen, ob Benutzer bestimmte Rechte sehen oder nicht. Ich brauche eigentlich keine Position von Elementen. Dosis Silverlight haben diese Art von Funktion? –