【发布时间】:2013-05-30 15:01:18
【问题描述】:
我是 MVVM 的新手,我希望有人可以为我澄清一些事情。我需要一个在我的主视图中显示日期的标签。
我做了一个模型类“日期”:
public class Date
{
DateTime _date;
public DateTime Date { get { return _date; } }
}
我是否需要为 Date 创建一个 ViewModel,然后将其传递给 MainViewModel?我可以直接在 MainViewModel 中使用 Date 吗?还是一个坏主意?
如果是这种情况,是否每个模型都需要自己的 ViewModel,即使它只在主 ViewModel 中使用?或者还有其他方法可以解决这个问题吗? “日期”甚至需要成为自己的模型吗?
任何建议或提示将不胜感激。抱歉,问题的洪流;我的目标是学习如何正确有效地实现 MVVM。
【问题讨论】:
-
在 MVVM 中,ViewModel 绑定到 View,所以你的
Date模型可以出现在多个 ViewModel 中。 -
让我们从头开始:找出这个日期应该是什么属性。创建一个模型来包装单个值看起来不是一个好主意。日期或任何其他标量值本身并不是什么东西。它代表其他东西的属性。独立存在是没有意义的。