如何在PRISM中获取区域视图
本文关键字:获取 区域 视图 PRISM | 更新日期: 2023-09-27 18:25:34
我正在使用PRISM,并试图获取视图,但函数GetView()
返回null。
我做错了什么?
public void Initialize()
{
_regionManager.RegisterViewWithRegion("TopLeftRegion", () => _container.Resolve<View1>());
_container.RegisterType<Object, View1>("ViewB");
var view = _regionManager.Regions["TopLeftRegion"].GetView("ViewB");
}
返回null的原因是没有名为"ViewB"的视图。当您使用RegisterViewWithRegion时,Prism会激活视图类型的新实例(在您的情况下为View1>。但是,无法使用该技术为视图集合命名该实例。
为了完成您想要做的事情,您需要将自己实例化的视图添加到区域中。
_regionManager.Regions["TopLeftRegion"].Add(new View1(),"ViewB");
var view = _regionManager.Regions["TopLeftRegion"].GetView("ViewB");
更多信息可以在这里找到