模态对话框显示在Windows 10中的启动屏幕下方

时间:2017-02-15 19:45:20

标签: c#

在我们的一个Windows应用程序中,使用MessageBox.Show启动一个对话框,它在win 7和8上正常工作。但在Win 10上,弹出窗口显示在启动器下方。有什么猜测如何纠正这个?

感谢

1 个答案:

答案 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);