Вместо использования традиционного экрана-заставки я хочу отобразить окно входа, чтобы пользователь мог ввести свои учетные данные. Между тем, в фоновом режиме я хочу инициализировать приложение, а затем загрузить главное окно. Проблема в том, что окно входа в систему закрыто основным окном после его отображения.
private void App_OnStartup(object sender, StartupEventArgs e)
{
Current.MainWindow = new LoginWindow();
Current.MainWindow.Show();
Task.Run(() => { /*do app startup background stuff*/ }).ContinueWith(t =>
{
var appWindow = new ApplicationWindow();
appWindow.Show();
Current.MainWindow.Owner = appWindow;
}, TaskScheduler.FromCurrentSynchronizationContext());
Окно входа в систему с самого начала делается главным окном. Мое предположение заключалось в том, что, установив владельца ApplicationWindow в окно входа в систему, окно входа в систему останется сверху. Если я делаю это неправильно, есть ли способ добиться того, чего я хочу? Самый верхний флаг работает, но тогда окно оказывается самым верхним, что нежелательно.