我通过将位图的构建操作设置为 Splashscreen来使用WPF 中的SplashScreen功能。在初始屏幕后面,正在检查许可信息,如果失败,我会显示MessageBox。
根据此反馈,这是因为 MessageBox.Owner 是启动屏幕,并且一旦打开另一个窗口,即使它是 MessageBox,启动屏幕窗口也会关闭,然后又关闭 MessageBox,因此用户永远不会看到消息框。
所以解决方法是将 MessageBox.Owner 设置为另一个窗口,但这意味着我必须实例化另一个可能甚至不需要的窗口。
是否可以将 MessageBox.Owner 设置为桌面窗口?以及如何,因为唯一想到的其他函数是GetDesktopWindow() api 函数,但它返回一个窗口句柄,而 MessageBox.Owner 是一个 WPF 窗口。