如果我们需要使用prism弹出一个新的提示窗体可以这样写
var xxxx = container.Resolve<View>();
xxxx.ShowDialog()
但是这样写新窗体注入的regionManager还是原来父窗体的regionManager对象。利用这个对象进行视图注入也可以操作,但是会导致一些奇怪的问题,比如在regionManager.Regions里找不到新加的Region。
此处新窗体的构造函数需要做如下处理。
public xxxx()
{
InitializeComponent();
regionManager = (new RegionManager()).CreateRegionManager();
RegionManager.SetRegionManager(this,regionManager);
}
这样就创建了一个新的regionmanager来处理新窗体的绑定了。