详解C#中MessageBox消息框

在程序中,我们经常使用消息对话框给用户一定的信息提示,如在操作过程中遇到错误或程序异常,经常会使用这种方式给用于以提示。在C#中,MessageBox消息对话框位于System.Windows.Forms命名空间中,一般情况,一个消息对话框包含信息提示文字内容、消息对话框的标题文字、用户响应的按钮及信息图标等内容。C#中允许开发人员根据自己的需要设置相应的内容,创建符合自己要求的信息对话框。

MessageBox消息对话框只提供了一个方法Show(),用来把消息对话框显示出来。此方法提供了不同的重载版本,用来根据自己的需要设置不同风格的消息对话框。此方法的返回类型为DialogResult枚举类型,包含用户在此消息对话框中所做的操作(点击了什么按钮),其可能的枚举值有以下几种:

  成员名称       说明
  Abort   用户单击“中止”按钮的返回值
  Cancel   用户单击“取消”按钮的返回值
  Igore   用户单击“忽略”按钮的返回值
  No   用户单击“否”按你的返回值
  None   强制响应(Modal)对话框继续执行,对话框没有返回任何信息
  OK   用户单击“确定”按钮的返回值
  Retry   用户单击“重试”按钮的返回值
  Yes   用户单击“是” 按钮的返回值

开发人员可以根据这些返回值判断接下来要做的事情。

在Show方法的参数中使用MessageBoxButtons来设置消息对话框要显示的按钮的个人及内容,此参数也是一个枚举值,其成员如下表所示:

  成员名称       说明
  AbortRetryIgnore   在消息框对话框中提供“中止”、“重试”和“忽略”三个按钮
  OK   在消息框对话框中提供“确定”按钮
  OKCancel   在消息框对话框中提供“确定”和“取消”两个按钮
  RetryCancel   在消息框对话框中提供“重试”和“取消”两个按钮
  YesNo   在消息框对话框中提供“是”和“否”两个按钮
  YesNoCancel   在消息框对话框中提供“是”、“否”和“取消”三个按钮

 在设计中,可以指定上表中的任何一个枚举值所提供的按钮,单击任何一个按钮都会对应DialogResult中的一个值。

在Show方法中使用MessageBoxIcon枚举类型定义显示在消息框中的图标类型,其可能的取值和形式如下表:

  成员名称 图标形式   说明
  Asterisk MessageBox消息对话框- 翔宇亭IT乐园  圆圈中有一个字母i组成的提示符号图标
  Error MessageBox消息对话框   红色圆圈中有白色X所组成的错误警告图标
  Exclamation  MessageBox消息对话框  黄色三角中有一个!所组成的符号图标
  Hand  MessageBox消息对话框  红色圆圈中有一个白色X所组成的图标符号
  Information MessageBox消息对话框   信息提示符号
  None    没有任何图标
  Question MessageBox消息对话框   由圆圈中一个问号组成的符号图标
  Stop MessageBox消息对话框   背景为红色圆圈中有白色X组成的符号
  Warning MessageBox消息对话框   由背景为黄色的三角形中有个!组成的符号图标

除上面的参数之外,还有一个MessageBoxDefaultButton枚举类型的参数,指定消息对话框的默认按钮。

下面是一个运用消息对话框的例子:

新建一个Windows应用程序,并从工具箱当中拖拽到窗口里一个按钮,把按钮和窗口的Text属性修改为“测试消息对话框”,双击该按钮,添加如下代码:

DialogResult dr;
       dr=MessageBox.Show("测试一下消息对话框!","测试测试",MessageBoxButtons.YesNoCancel,
                MessageBoxIcon.Warning,MessageBoxDefaultButton.Button1);
       if(dr==DialogResult.Yes)
                 MessageBox.Show("你选择的为“是”按钮","系统提示1");
       else if(dr==DialogResult.No)
                 MessageBox.Show("你选择的为“否”按钮","系统提示2");
       else if(dr == DialogResult.Cancel)
                 MessageBox.Show("你选择的为“取消”按钮","系统提示3");
       else
                 MessageBox.Show("你没有进行任何的操作!","系统提示4");

系统运行后,将出现如下界面:

MessageBox消息对话框

单击按钮“测试消息对话框”,将出现如下消息对话框:

MessageBox消息对话框

分别单击三个按钮,将出现如下三种情况:

MessageBox消息对话框MessageBox消息对话框MessageBox消息对话框

猜你喜欢

转载自blog.csdn.net/typhoonwang/article/details/45030539