在我们的一个Windows应用程序中,使用MessageBox.Show启动一个对话框,它在win 7和8上正常工作。但在Win 10上,弹出窗口显示在启动器下方。有什么猜测如何纠正这个?
感谢
答案 0 :(得分:1)
使用MessageBox.Show重载,允许您特定父窗口: https://msdn.microsoft.com/en-us/library/cked7698(v=vs.110).aspx
如果您使用的是WPF / UWP,可以这样写:
Application.Current.Dispatcher.Invoke(DispatcherPriority.Normal,
() => MessageBox.Show(Application.Current.MainWindow, msg));
在没有特定窗口的情况下破解相同功能的另一种方法是:
Application.Current.Dispatcher.Invoke(DispatcherPriority.Normal,
() => MessageBox.Show(new Form { TopMost = true }, msg);