Автоматическое закрытие messagebox в C#
в настоящее время я разрабатываю приложение на C#, где я отображения MessageBox. Как я могу автоматически закрыть окно сообщения через пару секунд?
2 ответов
вам нужно будет создать свое собственное окно с кодом, содержащим загруженный обработчик и обработчик таймера следующим образом:
private void Window_Loaded(object sender, RoutedEventArgs e)
{
Timer t = new Timer();
t.Interval = 3000;
t.Elapsed += new ElapsedEventHandler(t_Elapsed);
t.Start();
}
void t_Elapsed(object sender, ElapsedEventArgs e)
{
this.Dispatcher.Invoke(new Action(()=>
{
this.Close();
}),null);
}
затем вы можете сделать свое пользовательское окно сообщения, вызвав ShowDialog ():
MyWindow w = new MyWindow();
w.ShowDialog();
Система.Окна.Функции MessageBox.Show () метод имеет перегрузку, которая принимает окно владельца в качестве первого параметра. Если мы создадим невидимое окно владельца, которое затем закроем через определенное время, это дочернее окно сообщения также закроется.
вот полный ответ:https://stackoverflow.com/a/20098381/2190520