覆盖WinForms MessageBox控件

时间:2013-03-15 13:11:11

标签: c# winforms dialog override

全部,我了解到,对于广泛定制的对话框,我需要创建自己的表单ShowDialog()。但是,在我目前的情况下,我只想扩展MessageBox类以方便CustomMessageBox,它能够显示由系统确定的不同图标。

我之前没有覆盖过这样的控制,我甚至不知道从哪里开始。有人能指出我正确的方向吗?

感谢您的时间。

3 个答案:

答案 0 :(得分:6)

MessageBox实际上不是控件(不会从Control继承),它只是一个类。

实际上,它甚至几乎是static类,因为没有定义公共/受保护的构造函数,只有static个方法。它更像是一家工厂。

你可能应该自己编写,因为它不可扩展。

答案 1 :(得分:2)

不幸的是,你不能像那样定制MessageBox。你必须自己动手。

答案 2 :(得分:2)

除了更改消息,标题和可用的标准按钮之外,

MessageBox不支持自定义。如果您想要自定义消息框,则必须自己创建一个消息框。有关示例,请参阅How to create a custom MessageBox?