2017-06-29 6 views
0

Ich versuche, eine PRISM WPF-Anwendung zu entwickeln, wo ich zwei oder mehr Ansichten abhängig von dem gleichen ViewModel haben werde. Zuerst dachte ich daran, Unity zu verwenden, um eine Injektion über den Konstruktor der Ansicht durchzuführen und innerhalb des Konstruktors den DataContext zu setzen. Diese Idee wurde von der Mannschaft abgelehnt, weil sie nichts im Code-Behind wollen. Darüber hinaus verwenden die Ansichten einen ViewModelLocator, der mit dem ViewModel automatisch verbunden wird. Also dann mein einziger anderer Gedanke, ein Modul mit einer einzigen Ansicht zu machen, aber wie gehe ich dann vor, dasselbe ViewModel zwischen Modulen zu teilen, wenn ich Unity IOC verwende? Irgendwelche Ideen mit einer Art von Beispiel?Verwenden von PRISM zum Teilen der gleichen ViewModels zwischen Ansichten

Antwort

0

Teilen Sie keine ViewModels-Instanzen zwischen Ansichten. Laden Sie die Daten einfach so, wie Sie sie benötigen. Aber wenn Sie sich in den Fuß schießen müssen, gibt es viele Möglichkeiten, es zu tun. Am einfachsten wäre es, Ihr ViewModel als Singleton in Ihrem Container zu registrieren.

+0

Ich dachte sofort an diese Idee, als ich diese Aufgabe zum ersten Mal bekam, aber das Team liebte diese Idee auch nicht. Schlimmer noch schlimmer, ich sagte ihnen, dass wir möglicherweise verschrotten müssen, was sie bekommen haben und gehen Sie mit Ihrem [Pluralsight Kurs] (https://www.pluralsight.com/courses/prism-problems-solutions) auf das Laden abhängiger Ansichten –

+0

If Ihr Team mag die Idee, VM-Instanzen in verschiedenen Ansichten zu teilen. Dann haben Sie größere Probleme –

Verwandte Themen