Ich habe ein FlowDocument, das Zeug enthält, das wie folgt an mein ViewModel gebunden ist:
%Vor%Nun möchte ich eine Liste von Klassen mit einer Art von DataTemplate anzeigen, habe aber keine Ahnung, wie ich anfangen soll. Sag, ich habe eine Klasse wie:
%Vor%Und ich möchte dies wie folgt an die FlowDocument-Liste binden:
%Vor%Natürlich funktioniert das nicht - aber ich finde keine Erklärung, wie man Listen in einem FlowDocument mit Templates bindet - ist das möglich?
Siehe diese Frage .
Ich denke, Sie haben zwei Möglichkeiten
Aktualisieren
Eine dynamischere Lösung, die zwei angefügte Eigenschaften verwendet. Eine Ressource mit der Vorlage wird dem Absatz hinzugefügt (der das Attribut x:Shared="False"
haben muss, ansonsten fügen wir immer dieselben Elemente hinzu). Dann werden die Quellenliste und der Name der Vorlagenressource als angehängte Eigenschaften festgelegt.
Beim PropertyChanged-Callback wird geprüft, dass beide Eigenschaften gesetzt sind und dann ein Span
-Element für jedes Element in der Liste erstellt wird. Die Span-Elemente DataContext
werden auf das aktuelle Element gesetzt, damit die Bindungen funktionieren
AbsatzInlineBehavior
%Vor%Tags und Links wpf mvvm flowdocument binding