gpt4 book ai didi

wpf - 一个模型实体,多个页面->多个 View ?多个ViewModel?

转载 作者:行者123 更新时间:2023-12-03 10:13:44 24 4
gpt4 key购买 nike

由于屏幕空间有限,我将使用多个页面(连续显示-思考向导)捕获单个实体的用户输入。在我的模型中,我希望将此实体建模为单个类是正确的。

在MVVM实现中,我假设将每个页面视为单独的View是最佳的MVVM做法。这样对吗?

对于每个页面是否都有自己的ViewModel还是应该有多个页面引用的ViewModel实例,对于最佳MVVM做法是否达成共识?

为了显示:

选项1

Class A (X, Y, Z)
ViewModelA1 (X)
ViewModelA2 (Y)
ViewModelA3 (Z)
View1 captures ViewModelA1
View2 captures ViewModelA2
View3 captures ViewModelA3

选项2
Class A (X, Y, Z)
ViewModelA (X, Y, Z)
View1 captures ViewModelA.X
View2 captures ViewModelA.Y
View3 captures ViewModelA.Z

最佳答案

“查看”一词说明了一切。这是数据 View 。 ViewModel的工作是使来自模型的数据可显示。数据需要做的任何事情都发生在 View 模型中,以便 View 可以显示它。

通常, View 与 View 模型之间存在一对一的关系,因为通常只想以一种方式显示该数据。 (一个“ View ”)
我偏离常规做法(可能是MVP模式)的地方是,如果您想以多种不同的方式显示数据(例如,您想要条形图,折线图或饼图)和数据,对于所有 View 都是相同的,那么您只需要一个 View 模型。这是DRY原则的一个案例。如果您有三个 View 模型并且它们都相同,则使用一个 View 模型。多个 View 。一个 View 模型。

关于wpf - 一个模型实体,多个页面->多个 View ?多个ViewModel?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5073051/

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