c# - 一个 ViewModel 在 WPF 中拥有一组 ViewModel 有意义吗?

标签 c# wpf mvvm

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

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

最佳答案

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

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

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

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

关于c# - 一个 ViewModel 在 WPF 中拥有一组 ViewModel 有意义吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9861480/

相关文章:

c# - CookieContainer 错误?

c# - 使用新的 Unity VideoPlayer 和 VideoClip API 播放视频

c# - 如何使用 Caliburn 将 Pivot 集中在 ViewModel 中的特定 PivotItem 上

wpf - MVVM - 如何将 View 模型绑定(bind)到 View

c# - 如何打开当前窗口?

c# - 我可以执行多个 Catch block 吗?

c# - 通过 CommandParameters 返回 ViewModels 的实例

wpf - Windows 8 中的 WinRT 和 WPF

c# - 为wpf mvvm应用程序设置字体系列的用户首选项

c# - 最佳实践清理 ViewModelLocator