Ich bin leider weit von guten Ratschlägen entfernt, aber ein ähnliches Thema hatte ich auch schon gestartet, bei dem @Nofear23m was dazu geschrieben und gecodet hat, wie man andere Fenster MVVM-konform (?) aufruft.
kurze Zwischenfrage zu FindOwnerWindow, weil ich selber mal wieder dabei bin, die ganzen Geschichten nachzuvollziehen. Diesen Teil versteh ich (wohl) noch nicht: VB.NET-Quellcode (6 Zeilen) Unter welchen Bedingungen trifft dieser Teil zu? Wenn über den LINQ-Ausdruck nix gefunden wird, wie(so) kann dann über die effektiv selbe Geschichte per For-Schleife was gefunden werden?
Bin jetzt verwirrt, dass das MainWindow in der View-Assembly ein Window und kein UserControl ist, was dann im MainWindow (einem Window) in der App-Assembly angezeigt wird. Denn so kann es ja nicht in der App-Assembly per XAML eingebunden werden. Aber vielleicht blick ich da so einiges noch nicht …
Noch eine Zwischenfrage, bevor ich bezüglich der Services hier die Klappe halte: Warum soll der Dispatcher das mit dem Window.ShowDialog invoken? Gibt es Fälle, in denen das direkte Aufrufen wegen Nebenläufigkeit nicht funktioniert? Ist das ein realistisches Szenario?