我是否必须像以前一样回滚并使用 BootStrapper?
引导程序仍然存在。它被标记为已弃用,可能会在未来的版本中消失,但只要它存在,您就可以使用它。至少,直到问题PrismApplicationBase
得到解决。您应该为此在github上创建一个问题。
编辑:
该问题已被提出,无法修复(1413)。
我将从问题中复制建议的解决方法以供参考:
protected override Window CreateShell()
{
return null;
}
protected override void OnInitialized()
{
var shellWindow = Container.Resolve<ShellWindow>();
shellWindow.Show();
MainWindow = shellWindow.ParentOfType<Window>();
// there lines was not executed because of null Shell - so must duplicate here. Originally called from PrismApplicationBase.Initialize
RegionManager.SetRegionManager(MainWindow, Container.Resolve<IRegionManager>());
RegionManager.UpdateRegions();
InitializeModules();
base.OnInitialized();
}