Hi,
ich bin gerade dabei mich ein wenig mehr mit WPF zu beschäftigen und bin gerade bei den Commands.
Grundsätzlich weiß ich wie ich Commands implementiere und diese über ein ViewModel binde.
Ich mach es aktuell so das ich für jeden Command einen eigenen Command implementiere. Aber für ein Menu scheint mir das gar nicht so sinnvoll zu sein.
Die meisten Menupunkte öffnen ein neues Fenster und ich würde gerne für alle an einen Command "OpenWindowCommand" binden, welcher ggf. über einen Commandparameter mit dem Namen zB ein anderes Window erzeugt (mit einem anderen ViewModel).
Ist dies sinnvoll bzw wie ist diesbezüglich die best practice?
Aktuell ist mein Ansatz für jeden Menupunkt ein eigener Command und im ViewModel übergebe ich dann einem WindowManagerService das ViewModel und anhand des ViewModels öffnet der WindowManager ein anderes View.
Ich wollte möglichst MVVM konform bleiben so dass ViewModel nix von den Views weiß und auch möglichst kein CodeBehind existiert.
Wäre es hier sinnvoller die neuen Windows im Codebehind der MainView zu öffnen?
In einem Beispiel von hier dofactory.com/ über DesignPatterns verwenden die bei MVVM in .NET CodeBehind bei den Views um andere Views zu öffnen.
Hat jemand ein paar Ansätze wie man das am besten umsetzt und halbwegs MVVM konform bleibt.
Meine ViewModels haben keine Referenz auf Views und das möchte ich auch so belassen.
Thx
LG Mono
ich bin gerade dabei mich ein wenig mehr mit WPF zu beschäftigen und bin gerade bei den Commands.
Grundsätzlich weiß ich wie ich Commands implementiere und diese über ein ViewModel binde.
Ich mach es aktuell so das ich für jeden Command einen eigenen Command implementiere. Aber für ein Menu scheint mir das gar nicht so sinnvoll zu sein.
Die meisten Menupunkte öffnen ein neues Fenster und ich würde gerne für alle an einen Command "OpenWindowCommand" binden, welcher ggf. über einen Commandparameter mit dem Namen zB ein anderes Window erzeugt (mit einem anderen ViewModel).
Ist dies sinnvoll bzw wie ist diesbezüglich die best practice?
Aktuell ist mein Ansatz für jeden Menupunkt ein eigener Command und im ViewModel übergebe ich dann einem WindowManagerService das ViewModel und anhand des ViewModels öffnet der WindowManager ein anderes View.
Ich wollte möglichst MVVM konform bleiben so dass ViewModel nix von den Views weiß und auch möglichst kein CodeBehind existiert.
Wäre es hier sinnvoller die neuen Windows im Codebehind der MainView zu öffnen?
In einem Beispiel von hier dofactory.com/ über DesignPatterns verwenden die bei MVVM in .NET CodeBehind bei den Views um andere Views zu öffnen.
Hat jemand ein paar Ansätze wie man das am besten umsetzt und halbwegs MVVM konform bleibt.
Meine ViewModels haben keine Referenz auf Views und das möchte ich auch so belassen.
Thx
LG Mono
Das ist meine Signatur und sie wird wunderbar sein!