gpt4 book ai didi

c# - 如何分解 450 行代码的 View 模型

转载 作者:行者123 更新时间:2023-12-03 10:35:25 26 4
gpt4 key购买 nike

所以我还是 wpf/mvvm 的新手。我没有使用任何框架,只是一个 VS wpf project .

我有一个主窗口 View 模型,它有 5 个属性、3 个命令、几个获取数据以填充 View 的私有(private)函数、2 个对话框及其函数,以及一个用于事件处理程序的委托(delegate)。

我尝试创建一个 helper class处理私有(private)函数,但这些函数会更新引发属性更改事件的属性,因此我必须将相同的属性添加到帮助程序类中。从 View 模型中复制助手类中的属性感觉很奇怪。

此外,当我尝试这样做时,属性更改事件为空,因为 View 的数据上下文设置为 View 模型,而不是助手。所以我的尝试失败了。

View 模型中的属性分别用于一个组件-a combo box .

我真的不知道如何打破类了,而不是我已经知道了。

命令应该放在单独的文件中吗?如果我将私有(private)函数移动到辅助类中,如何传播 OnPropertyChanged event从助手到 View 模型到 xaml ?

最佳答案

您还可以使用部分类来分离不同的关注点。

您可以使用foody在编译时注入(inject)属性更改代码。
使用 foody,您可以使用 [ImplementPropertyChanged]-Attributes,因此您的 View 模型中不需要所有 OnProperty-Changed 内容。

关于c# - 如何分解 450 行代码的 View 模型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31716895/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com