Thread.Join UI блок в WPF
Я создал кастомMessageWindow
чтобы избавиться от старого и придать ему свой стиль ...
Моя проблема, когда я, например, нажимаю кнопку, чтобы открыть пользовательскийMessageWindow
это действительно не блокирует мой пользовательский интерфейс.
public static void Show(string caption, string message)
{
Thread thread = new Thread(() =>
{
MessageWindow window = new MessageWindow(caption, message);
window.ShowDialog();
});
thread.SetApartmentState(ApartmentState.STA);
thread.Start();
thread.Join();
}
я думалthread.Join
будет блокировать родительский поток, пока новый не исчезнет, но каким-то образом пользовательский интерфейс частично активен. Я не вижу анимации и не могу перемещать окно, но когда я нажимаю кнопку в заблокированном потоке, пока мойMessageWindow
открыт, он все еще принимает щелчок и выполняет его после того, как я закрылMessageWindow
нить.
Есть ли способзапрещать сообщение насос или заблокировать / заблокировать любые темы / пользовательский интерфейс, когда окно сообщений открыто?