Я пытаюсь показать окно проверки подлинности, затем откройте главное окно, но когда вы закрываете окно авторизации, приложение останавливается
private void App_OnStartup(object sender, StartupEventArgs e)
{
new LoginWindow().ShowDialog();
new MainWindow().Show();
// Then application stopped
}
НО!
Если проверка окна дисплея с помощью метода Show(), приложение закрывается после закрытия окна авторизации
private void App_OnStartup(object sender, StartupEventArgs e)
{
new LoginWindow().Show();
new MainWindow().Show();
// Then application running
}
Почему такое поведение???
По умолчанию, когда основные окна приложения закрыты, приложение закрывается.
Согласно документации, "Application.MainWindow автоматически устанавливается со ссылкой на первый объект Window, который будет создан в AppDomain".
Чтобы обойти это, вы можете попытаться создать сначала объект MainWindow (без вызова Show()), затем создать и показать диалоговое окно входа в систему, а затем отобразить главное окно.
Благодаря Эрану Отзапу!
Application.Current.ShutdownMode = ShutdownMode.OnExplicitShutdown;
Работает!
Application.ShutDownMode = ShutDownMode.OnMainWindowClose
или явный.