WPF Prism 将相同的 View 模型实例注入(inject)两个 View

标签 wpf dependency-injection prism

所以我在 WPF Prism 应用程序中有两个单独的 View 。如何通过依赖注入(inject)将 ViewModel 的同一个实例注入(inject)到两个 View 中?

最佳答案

(我假设您正在使用 Unity,因为您直接提到了 DI,并且没有说“导入”或类似内容)

嗨,

您必须在容器中将 ViewModel 注册为单例(使用 ContainerControlledLifetimeManager)并像往常一样将其注入(inject)。这可确保您每次请求时都会获得相同的实例。 在这种情况下,一个有效的方法可能是使用命名注册,以防您希望在其他地方注入(inject)相同的虚拟机,但不需要相同的实例。

This article解释了如何执行此操作。

关于WPF Prism 将相同的 View 模型实例注入(inject)两个 View ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3957383/

相关文章:

c# - MVVM 模式 : an intermediate View between Command binding and ViewModel execute

java - 使用 Apache Camel AdviceWith 和 weaveById 进行测试

wpf - PRISM - 子区域 View 的重用 - 可以做到吗?

c# - 如何绑定(bind)到 Win RT 中当前上下文之外的属性?

wpf - 使用 IDataErrorInfo 和更新按钮状态在验证期间启用禁用保存按钮

c# - 需要帮助开发和绑定(bind) Double <--> 转换器

wpf - 如何屏蔽一周中的特定日期(日期选择器)[VB]

c# - CaSTLe Windsor - 按惯例注册

java - Spring Boot - 将应用程序属性注入(inject)到 Util 类变量中

wpf - 如何使用 WPF 进行日志记录?