gpt4 book ai didi

c# - 如何在 XBAP/Prism 中初始化 Shell?

转载 作者:太空宇宙 更新时间:2023-11-03 10:49:40 25 4
gpt4 key购买 nike

在 WPF/PRISM 中,当您创建 shell 时,它将被分配给App.Current.MainWindow。但是在浏览器中的 WPF (XBAP) 行中:

App.Current.MainWindow = (Window)Shell;

失败并显示错误消息:

Unable to cast object of type 'XBAPClient.Page1' to type 'System.Windows.Window'.

protected override DependencyObject CreateShell()
{
return this.Container.GetExportedValue<Page1>();
}

protected override void InitializeShell()
{
base.InitializeShell();
App.Current.MainWindow = (Window)Shell;
App.Current.MainWindow.Show();
}

如何加载外壳?

最佳答案

在 XBAP Application.Current.MainWindow 中是 MS.Internal.AppModel.RootBrowserWindow

您应该只将您的页面分配给这样的窗口内容:

...
protected override void InitializeShell()
{
base.InitializeShell();
Application.Current.MainWindow.Content = Shell;
}
...

关于c# - 如何在 XBAP/Prism 中初始化 Shell?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21954532/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com