... и не имеет никакого смысла, почему. Т-Т
В моем обработчике событий Application_Startup
у меня есть код, который выглядит примерно так:
private void Application_Startup(object sender, StartupEventArgs e)
{
string errorMessage;
if(CheckStartUpConditions(out errorMessage))
{
(new MainWindow()).Show();
}
else
{
MessageBox.Show(errorMessage, "Application Startup",
MessageBoxButton.OK, MessageBoxImage.Error);
Shutdown();
}
}
private bool CheckStartUpConditions(out string errorMessage)
{
errorMessage = string.Empty;
if(...)
errorMessage += "Please login to xxx. ";
if(...)
errorMessage += "Please install xxx.";
if(string.IsNullOrEmpty(errorMessage))
return true;
else
return false;
}
В окне сообщения появляется краткий вид, как секунда, прежде чем перейти в "POOF!". Это не ждет, когда я нажму "ОК" или на кнопку "X". Я очень сомневаюсь, почему это происходит, поэтому любая помощь будет очень признательна.
Я пробовал комментировать вызов Shutdown
только для ударов и хихиканья, и он по-прежнему ведет себя одинаково.
Кроме того, приложение также имеет SplashScreen
, поэтому я не знаю, будет ли это делать это.
EDIT: я добавил больше кода, если это поможет. В окне сообщения отображается правильное сообщение об ошибке. Просто не останетесь достаточно долго, чтобы пользователи могли его прочитать. > : (
ИЗМЕНИТЬ ЧАСТЬ 2: Хорошо... Думаю, я нашел преступника.:( Я изменил действие сборки на изображении, которое я использую в качестве своего всплеска от SplashScreen до None, и окно сообщения теперь останется и ждет ввода пользователя. Я не понимаю, почему SplashScreen прикручивает MessageBox. > : (