把MessageBox.Show交给主线程去处理就可以了
public void ShowMessage(string msg)
{
this.Dispatcher.Invoke(new MessageBoxShow(MessageBoxShow_F), new object[] { msg });
}
delegate void MessageBoxShow(string msg);
void MessageBoxShow_F(string msg)
{
MessageBox.Show(msg, "提示信息", MessageBoxButton.OK, MessageBoxImage.Information);
}
调用方式:ShowMessage("txt!");
这样弹出的提示框就跟是主窗口弹出的一样,阻塞了窗口,要点击后才能对主窗口进行操作。