我想在我的 wpf 应用程序中实现一个闪屏,我可以在其中显示一些状态消息。我找到了一个关于如何做到这一点的好教程。
我正在使用 mvvm 工具包。我的 App.xaml 将 StartupUri 设置为“View/Shell.xaml”。这一切都很好。现在我想在 StartupUri 被“调用”之前启动 Splashscreen。
在 App.xaml.cs 我实现了这样的主要方法:
[STAThread()]
static void Main()
{
Splasher.Splash = new IPA.Merlin.View.ViewSplashScreen();
Splasher.ShowSplash();
for (int i = 0; i < 1000; i++)
{
MessageListener.Instance.ReceiveMessage(string.Format("Load module {0}", i));
Thread.Sleep(1);
}
new App();
}
/// <summary>
///
/// </summary>
public App()
{
StartupUri = new System.Uri("View/Shell.xaml", UriKind.Relative);
Run();
}
为此,我必须将项目首选项中的启动对象更改为此主要方法。
所以现在我的 Splashscreen 被调用并显示测试消息,并且在这个 App() 被调用之后。我收到以下错误:在“System.Windows.StaticResourceExtension”上提供值引发内部错误异常:“找不到名为 {Locator} 的资源
如果我将 StartupUri 更改为另一个窗口,则也找不到此窗口资源。仅当我更改启动对象然后自己调用 app.run 时才会发生这种情况。如果没有启动画面,所有资源都可以毫无问题地找到。
谁能帮我解决这个问题,因为它让我发疯
提前致谢