Создание MessageBox, который не останавливает код?

хорошо, я ищу что-то довольно простое: создание MessageBox, который не останавливает мой код.

Я предполагаю, что мне придется создать другой поток или что-то еще? Пожалуйста, посоветуйте, как лучше всего этого добиться.

спасибо!

2 ответов


нет, вам придется сделать свою собственную форму окна сообщения. the


вы можете запустить другой насос сообщений, вызвав его в отдельном потоке. MessageBox.Show pumps сообщение, так что это безопасно делать без вызова Application.Run.

public void ShowMessageBox()
{
  var thread = new Thread(
    () =>
    {
      MessageBox.Show(...);
    });
  thread.Start();
}

Edit:

Я, наверное, должен упомянуть, что я не рекомендую делать это. Это может вызвать другие проблемы. Например, если у вас есть два потока, перекачивающие сообщения, то окно сообщения может застрять за другой формой, не имея возможности заставить ее уйти, если форма ждет кто-то, кто закроет окно сообщения. Вы действительно должны попытаться найти другой способ решения проблемы.