我读过这篇很棒的文章http://blogs.msdn.com/b/kashiffl/archive/2010/10/04/prism-v4-region-navigation-pipeline.aspx
我现在正在使用Silverlight + Prism,首先我有这个:
公共类ActionViewModel:IRegionMemberLifetime {
public ActionVIewModel() {}
public bool KeepAlive { get { return true; } }
}
然后是一个简单的视图
public partial class ActionsView:UserControl { public ActionsView() { 的InitializeComponent(); }
[Dependency]
public ActionViewModel ViewModel {get;set;}
}
在我的模块初始化中,我有以下
Container.RegisterType(ViewNames.DriverManagement.DriverActionView);
然后我使用RegionManager.Regions [“RegionName”]。RequestNavigate(...)来请求该视图
导航有效,但是当我离开它并返回到该视图时,ViewModel构造函数总是被命中。这意味着,每次我请求此视图时,都会创建一个新实例,甚至KeepAlive也会返回true。
那么,我在这里错过了什么吗?
非常感谢!