【发布时间】:2013-09-18 17:43:46
【问题描述】:
我可能只是对 MVVM 如何正常工作感到困惑。
我有一个属性(缩放级别),我并不认为它是数据本身的属性,所以我觉得它不在视图模型中。我觉得它确实是视图的一个属性,所以我很犹豫将处理它的命令放入视图模型中。
是否可以在需要处理该命令的视图中将一个中继命令附加到控件上?
我想这确实是一个问题,即 MVVM 是否根本不需要代码,因为我觉得将执行命令的实际代码放在控件中而不是将代码放在视图模型中然后根据视图模型的某些属性更新控件
【问题讨论】:
-
这已在另一个问题中得到解决:stackoverflow.com/questions/6421372/…
-
ViewModels 用于对 View 进行建模,因此虽然 ZoomLevel 可能不是您的模型上的数据属性,但它可能是属于您的 ViewModel 上的特定于视图的业务属性。当然,如果它确实是一个特定于视图的属性,与您的应用程序逻辑无关,请随意将其放在视图后面的代码中:)