.net 关闭从App.xaml启动的模式窗口会触发WindowClosing事件
我有一个WPF应用程序,作为启动的一部分,我需要显示一个模式窗口以从用户那里获取一些信息。 我从App.xaml.cs\u应用程序启动内部创建并显示窗口。 在窗口的ok按钮中,我调用Close()方法。 检索到信息后,我想显示主应用程序窗口。 但是,主应用程序窗口立即收到WindowClosing事件并终止。 App.xaml代码:.net 关闭从App.xaml启动的模式窗口会触发WindowClosing事件,.net,wpf,.net,Wpf,我有一个WPF应用程序,作为启动的一部分,我需要显示一个模式窗口以从用户那里获取一些信息。 我从App.xaml.cs\u应用程序启动内部创建并显示窗口。 在窗口的ok按钮中,我调用Close()方法。 检索到信息后,我想显示主应用程序窗口。 但是,主应用程序窗口立即收到WindowClosing事件并终止。 App.xaml代码: private void ApplicationStartup(object sender, StartupEventArgs e) { if (Setti
private void ApplicationStartup(object sender, StartupEventArgs e)
{
if (Settings.Default.AskForLoginCredentials)
{
var loginWindow = new LoginCredentialsWindow();
bool? retVal = loginWindow.ShowDialog();
if (retVal.HasValue && retVal.Value)
{
string un = loginWindow.UserName;
string pw = loginWindow.Password;
}
else
{
_logger.Info("Credential request prompt was refused. Exiting Application.");
return;
}
}
MainAppWindow window = new MainAppWindow();
window.Show();
}
这里发生了什么 更改属性
默认值为OnLastWindowClose
,这意味着应用程序将在最后一个窗口关闭时关闭。其他两个选项是OnMainWindowClose
和OnExplicitShutdown
我通常使用OnExplicitShutdown
,这意味着需要调用它才能退出应用程序