防止WinForms MessageBox.显示模式弹出框
本文关键字:模式 显示 WinForms MessageBox 防止 | 更新日期: 2023-09-27 18:17:25
是否有办法拦截MessageBox.Show(...)
调用,而不是返回结果?
interface IShowMessage {
MessageBoxResult Show(...);
}
与类似
的实现class DoShowMessage : IShowMessage {
MessageBoxResult Show(...) { return MessageBox.Show(...); }
}
class NeverShowMessage : IShowMessage {
MessageBoxResult Show(...) { return MessageBoxResult.OK; }
}
,并在需要时使用任意一种实现。然而,在当前的代码库中,由于MessageBox.Show(...)
调用的绝对数量,这是不可行的。仍然,我需要摆脱的MessageBox模态弹出。
还有别的办法吗?
您可以使用Reflection
来覆盖MessageBox.Show
方法。
看看这篇文章的例子:
有没有办法"覆盖"?有反射的方法?