Bei der StackOverflow-Frage Wie können WPF-Konverter in einem MVVM-Muster verwendet werden? Ich habe gelernt, dass Wertkonverter nicht im MVVM-Muster verwendet werden sollten, da die die Funktionalität eines Wertkonverters sollte vom ViewModel selbst übernommen werden .
Das macht Sinn.
Aber ich erinnere mich, gelesen zu haben, dass man keine XAML-Elemente in der Ansicht ausstellen sondern stellen nur Datensammlungen zur Verfügung, die die Ansicht dann mit Hilfe von DataTemplates bindet und anzeigt.
Konverter scheinen jedoch recht leistungsfähig zu sein (sie werden z. B. in der MVVM-Vorlage Demo (siehe das "Messenger Sample" nach dem Entpacken) in diesem sie können Objekte in Objekte umwandeln z. B. Nachrichtenobjekte in FlowDocument-Objekte oder Kundenobjekte in Sichtbarkeitsobjekte oder benutzerdefinierte Statusobjekte in Bilder usw.
Wenn also ein ViewModel zu die Funktionalität eines Wertkonverters übernehmen muss es XAML-Elemente und -Eigenschaften wie StackPanel, Visibility, Color, FlowDocument usw. bereitstellen, oder?
Sieht jemand einen Grund, warum ein ViewModel sollte nicht diese reichen XAML-Objekte wie Wertkonverter tun freizugeben?