我在App_Startup()中加载MainWindow。我想在加载窗口时显示进度条。但它不工作:STA线程未加载WPF主窗口
void App_Startup(object sender, StartupEventArgs e)
{
Thread bootStrapThread = new Thread(new ThreadStart(runBootStrapProcess));
bootStrapThread.SetApartmentState(ApartmentState.STA);
bootStrapThread.IsBackground = true;
bootStrapThread.Start();
_loadingProgressBar = new loadingProgressBar();
_loadingProgressBar.ShowDialog();
}
我想从线程加载窗口:
void runBootStrapProcess()
{
MetadataReader mr = new MetadataReader();
if (currentVersionNo.Equals(remoteVersionNo))
{
Application.Current.Shutdown();
}
else
{
MainWindow mw = new MainWindow();
mw.Show();
}
_loadingProgressBar.ShouldCloseNow = true;
}
会发生什么?出了什么问题? –
您是否考虑过使用内置的[SplashScreen](http://msdn.microsoft.com/zh-cn/library/system.windows.splashscreen.aspx)class [instead](http://stackoverflow.com/问题/ 6121892/WPF的启动画面,直到窗口-端加载)? –
该应用程序自动关闭。 – maxpaul