【问题标题】:Does it make sense for a ViewModel to have a collection of ViewModels in WPF?ViewModel 在 WPF 中拥有 ViewModel 的集合是否有意义?
【发布时间】:2012-03-25 15:46:43
【问题描述】:

我有一个 WPF 应用程序,其中整个应用程序功能都放在选项卡中。与网络浏览器非常相似,每个选项卡都是实际应用程序的一个实例。

现在我有一个用于整个应用程序窗口 MainWindowViewModel 的视图模型,但我想知道是否可以使该视图模型具有这些选项卡视图模型的可观察集合?

【问题讨论】:

    标签: c# wpf mvvm


    【解决方案1】:

    是的,在这种情况下,这种方法有时是有意义的。当您拥有一组本身就是视图的列表项时,嵌套视图模型可以更轻松地确定您在任何给定时间使用的列表项。

    如果集合只是一组具有几个属性的简单对象,那么处理额外视图模型的开销就不值得了。

    但是,听起来这些选项卡中的每一个都有自己的一些行为,并且各个视图模型都是合适的。

    不过,如果您需要在视图模型之间进行通信,它确实会增加一些复杂性。如果您还没有使用某种事件聚合器,您可能需要在某个时候沿着这条路走下去。

    【讨论】:

    • 标签之间不需要以任何方式相互交谈。它们彼此完全分开。所以,我想我应该采取这种方法。
    • 一个月后:我发现这种方法非常完美。我只是想表达这个解决方案很棒。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-09-28
    • 2011-10-04
    • 2013-04-28
    • 1970-01-01
    • 2014-10-31
    • 1970-01-01
    相关资源
    最近更新 更多