1
有沒有辦法攔截MessageBox.Show(...)
調用,而是返回結果?防止WinForms MessageBox.Show模態彈出窗口
一種解決方案是一種實現定義的抽象像
interface IShowMessage {
MessageBoxResult Show(...);
}
像
class DoShowMessage : IShowMessage {
MessageBoxResult Show(...) { return MessageBox.Show(...); }
}
class NeverShowMessage : IShowMessage {
MessageBoxResult Show(...) { return MessageBoxResult.OK; }
}
和需要時使用的任何一種實現。但是,在當前的代碼庫中,由於調用數量龐大,因此這是不可行的。不過,我需要擺脫MessageBox模式彈出窗口。
有沒有其他辦法?
如果你只是想擺脫的模式'MessageBox',你可以用自己的實現,並使用查找/替換以替換所有消息框。 –