【发布时间】:2012-06-04 19:59:16
【问题描述】:
所以基本上我需要直接从另一个 viewmodel 实例化一个 viewmodel,我正在使用 MVVMLight,人们说我可以使用 MVVMLight ViewModelLocator 来做到这一点,我在源 ViewModel A 上尝试了这行代码,以实例化目标 ViewModel B
SimpleIoc.Default.GetInstance<BViewModel>();
没用,有什么想法吗?
【问题讨论】:
-
这应该可以。 GetInstance 返回 BViewModel 的默认实例,如果需要,它会按需实例化。在 BViewModel 构造函数中放置一个断点,我怀疑 IOC 容器尝试实例化它时出现问题。
-
我的错,它工作得很好,我只是忘记了一个简单的事实,即现在我的虚拟机将加载两次,并且我的构造函数出现错误,因此我从未收到第二次调用(查看调用)并且我一直假设我的这个调用是第二个调用并且第一个调用(VM 调用)从未发生,我修复了构造函数上的错误,现在我有两个调用
标签: silverlight windows-phone-7 mvvm ioc-container mvvm-light