Nach dem Einlesen in XamlWriter und XamlReader habe ich mich gefragt, ob es möglich ist, zur Laufzeit eine beliebige .xaml-Datei zu laden, den Objektbaum zu bearbeiten und dann wieder zu verwenden..XAML-Datei laden und Objektbaum zur Laufzeit bearbeiten
Was ich versuche zu erstellen, ist eine Art Showcase-Anwendung für alle verfügbaren Stile eines Projekts. Ich habe TemplateViews für mehrere ControlTypes (wie ButtonTemplateView.xaml, ListboxTemplateView.xaml ...), deren Style
-Eigenschaft an ein Viewmodel gebunden ist, die zur Laufzeit für jeden Fit-Stil dynamisch konstruiert und dann zur Hauptansicht hinzugefügt werden. Aber ich möchte auch alle Stile für die CustomControls des Projekts anzeigen, die ich gerade über Activator.CreatInstance
mit dem TargetType
des Stils, und dann das Objekt zur Hauptansicht hinzufügen.
Nun können sagen, wenn ein Custom MyCustomTextBox auf einem TextBox basiert, kann ich nur die TextBoxTemplateView.xaml laden, schalten alle < TextBox ... /> zu einem < MyCustomTextBox .../> und dann zu meiner Hauptansicht hinzufügen?
Wenn ja, wie? Kann ich es in eine Schnur verwandeln und die Wörter einfach ersetzen und sie dann wieder in etwas Brauchbares verwandeln? Oder muss ich das UserControl-Objekt bearbeiten, das ich bekomme, wenn ich XamlReader.Load
verwende? Oder etwas anderes?
Ich hoffe, das ist keine doppelte Frage (zumindest habe ich nichts dergleichen gefunden) und danke für jede Hilfe im Voraus.
Warum versuchst du es nicht einfach? – Clemens
Wenn ich wüsste wie, würde ich ... Warum glaubst du, dass ich hierher gekommen bin? –
"Schalten Sie jedes auf ein ", das vor dem Laden des XAML wie ein einfacher String-Ersatz aussieht. Hast du überhaupt etwas probiert? –
Clemens