According to the answer here , a workaround is to actually open an invisible window and use it as the parent of a MessageBox:
Window window = new Window() { Visibility = Visibility.Hidden, // Just hiding the window is not sufficient, as it still temporarily pops up the first time. Therefore, make it transparent. AllowsTransparency = true, Background = System.Windows.Media.Brushes.Transparent, WindowStyle = WindowStyle.None, ShowInTaskbar = false }; window.Show();
... then open the MessageBox with the appropriate parameter:
MessageBox.Show(window, "Titie", "Text");
... and do not forget to close the window when done (possibly when the application exits):
window.close();
I tried this and it works well. It is undesirable to open an additional window, but this is better than creating your own message window only for the sake of doing this work.
source share