c# - View Model Locator 的用途是什么?

标签 c# wpf mvvm viewmodel mvvm-light

我对 MVVM Light 中使用的 View 模型定位器感到困惑。我知道它允许将特定 View 的数据上下文绑定(bind)到定位器类中的静态 View 模型实例。

但是为什么我们需要一个包含所有 View 模型实例的单独的定位器类呢?它的优点是什么?除了实例化 View 模型和数据上下文目的之外,定位器还使用了什么?
例如,您可以在后面的代码中实例化 View 模型,并将其设置为 View 的数据上下文。

最佳答案

我使用 View 模型定位器是因为我喜欢将我的 View 写为“ View 优先”,而不是很多人喜欢做的“ View 模型优先”。我认为“先查看”更有意义。不仅如此,假设您已正确设置所有内容,它还允许您通过 DI 自动更新您的虚拟机。这样您就不必手动更新它们并设置 DataContexts 等。

关于c# - View Model Locator 的用途是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31526072/

相关文章:

c# - 测试函数内部或外部是否需要更好?

c# - 如何确保在使用键盘快捷键时只执行一个 KeyBinding 命令?

wpf - 如何在文本框中显示多个带颜色下划线的文本

c# - 绑定(bind)到属性并传递自定义 StringFormat

c# - WPF ListBox 属性绑定(bind)不更新

C# 在 Windows 中获取文件所有者

c# - 在 C# 中读取 GPU 温度

wpf - 为什么无法在组合框中选择空值?

c# - LINQ - 选择最小值,仅当集合不为空时

c# - Windows 窗体是否有类似 Snoop (WPF) 或 FireBug (ASP.NET) 之类的东西?