所以我还是wpf/mvvm的新手。我没有使用任何框架,只是VS wpf project
。
我有一个主窗口 View 模型,它具有5个属性,3个命令,几个私有(private)函数(用于获取用于填充 View 的数据),2个对话框及其函数,以及一个事件处理程序的委托(delegate)。
我尝试创建一个helper class
来处理私有(private)函数,但是这些函数会更新引发属性更改事件的属性,因此我必须向助手类添加相同的属性。从 View 模型复制助手类中的属性感到很奇怪。
另外,当我尝试此操作时,属性更改事件为null,因为 View 的数据上下文设置为 View 模型,而不是帮助器。所以我的尝试失败了。
View 模型中的属性是每个组件的一个属性combo box
。
我真的不知道该如何分类了。
命令应该放在单独的文件中吗?如果将私有(private)函数移到帮助程序类中,如何将OnPropertyChanged event
从帮助程序传播到 View 模型并传递给xaml
?
最佳答案
您也可以使用局部类来分离不同的关注点。
您可以使用foody在编译时注入(inject)属性已更改的代码。
对于foody来说,您可以使用[ImplementPropertyChanged] -Attributes,因此在 View 模型中不需要所有OnProperty-Changed的东西。
关于c# - 如何拆分450行代码的viewmodel,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/31716895/