Ich bin neu in MVVM und ich entwickle eine Anwendung. Ich habe eine Formularansicht mit viel Eigentum. Ungefähr 50. Ich kann diese nicht in usercontrol trennen, weil ich die mvvm-Prinzipien brechen würde.
Ich kann diese nicht ins Modell trennen, weil diese Logik enthalten. PropertyChange, Error change und dies wären keine poco-Klassen, und dies sind nicht die Modelle.
Wäre es nett, wenn ich 60 Eigentum in einem selben Viewmodel behalten würde?
Denke ich, dass es falsch ist? Wie würdest du das organisieren?
Ich kann diese in usercontrol nicht trennen, weil ich die mvvm-Prinzipien brechen würde.
Ich bin mir nicht sicher, was du damit meinst. Im Wesentlichen möchten Sie die Ansichtszusammensetzung verwenden und das Ansichtsmodell und die Ansichten in konstante Teile zerlegen.
Eine Ansicht ist ein WPF UserControl
(oder Window
). Wenn Sie also MVVM verwenden, verwenden Sie UserControl
, es wird nur konzeptionell als Ansichten im Muster betrachtet.
Ich würde auch empfehlen, dass Sie ein MVVM-Framework verwenden, wenn Sie das MVVM-Muster verwenden , und etwas wie Caliburn.Micro macht die Komposition unglaublich einfach.
Ich würde auch nicht empfehlen, Abhängigkeitseigenschaften für Ansichtsmodelle zu verwenden, stattdessen INotifyPropertyChanged .
Die meisten MVVM-Frameworks stellen einen Basisansichtmodelltyp bereit, der eine lambda-basierte Methode zum Aufrufen des PropertyChanged
-Ereignisses enthält und somit das Refactoring unterstützt.
Bitte verwenden Sie PropertyChanged
nicht für 60 Properties
. Verwende DependencyProperty
.
Für Nutzungsbedingungen verwenden Sie die propdp
Verknüpfung von Visual Studio und drücken Sie Tab
zweimal.
Bitte beachten Sie diesen Link: Ссылка
Tags und Links wpf .net c# mvvm mvvm-light