在WPF应用程序中使用Windows.Forms.MessageBox

10 浏览
0 Comments

在WPF应用程序中使用Windows.Forms.MessageBox

我正在开发一个WPF应用程序。在其基于文件的I/O函数中,我捕获了文件被另一个进程使用时抛出的异常。在这种情况下,应该出现带有重试/取消选项的消息框。据我所了解,在WPF中没有这样的消息框(Windows.MessageBox),所以我尝试使用Windows.Forms.Messagebox,但它的行为很奇怪:

当我调用它一次(只使用OK按钮选项进行测试)时...

System.Windows.Forms.MessageBox.Show("blablabla", "Test", System.Windows.Forms.MessageBoxButtons.OK);

...它会出现一毫秒,然后消失。

当我调用两次时...

System.Windows.Forms.MessageBox.Show("blablabla", "Test", System.Windows.Forms.MessageBoxButtons.OK);
System.Windows.Forms.MessageBox.Show("blablabla", "Test", System.Windows.Forms.MessageBoxButtons.OK);

...第二个消息框按预期保持可见,直到您点击“确定”。

我已经尝试使用“null”作为IWin32Window的参数,但它没有效果。另外,我还尝试将WPF-Mainwindow作为参数传递,但是(当然)它是错误的类型。

有什么建议吗?

admin 更改状态以发布 2023年5月24日
0
0 Comments

您可以使用弹出控件创建任何想要的对话框。

MSDN

示例

更多示例

0