Laden...

Ermittlung aller Control-Instanzen (auch DataTemplates)

Erstellt von Jack19 vor 5 Jahren Letzter Beitrag vor 5 Jahren 760 Views
J
Jack19 Themenstarter:in
2 Beiträge seit 2019
vor 5 Jahren
Ermittlung aller Control-Instanzen (auch DataTemplates)

Hallo

wie kann ich alle Instanzen eines bestimmten Controls (z.B. Textblock) ermitteln, um eine bestimmte Eigenschaft (z.B. Text) zu aktualisieren? Ich weiß zwar, wie ich Controls finden kann, die sich im VisualTree befinden. Wie finde ich aber die Controls in DataTemplates oder Popups? Mein Ziel ist es, Applikationsweit automatisch alle Texte zu aktualisieren, die eine bestimmte Property gesetzt haben. Die Text-Property ist übrigens nicht gebunden.

Vielen Dank im Voraus.

16.828 Beiträge seit 2008
vor 5 Jahren

Der Ansatz ist suboptimal. Du solltest nicht die Controls manuell aktualisieren; in vielen Aspekten ist das auch nicht oder nur mit (sehr hohem) Aufwand möglich.
Wenn Du alle Deine Controls kennen musst, dann stimmt das Design der Anwendung nicht.

Dafür gibt es eigentlich automatische Ansätze wie Data Bindung und Reactive Extensions - vor allem bei WPF sollte man immer auf Data Bindung und MVVM setzen.
Und Reactive Extensions macht zudem das Leben einfacher.

5.658 Beiträge seit 2006
vor 5 Jahren

Zu MVVM findest du hier eine Einführung mit Beispiel-Projekt: [Artikel] MVVM und DataBinding

Für Reactive Extensions haben wir leider noch keinen Artikel, vielleicht hat ja jemand Interesse, einen zu schreiben.

Weeks of programming can save you hours of planning