在程序中,我们经常使用消息对话框给用户一定的信息提示,如在操作过程中遇到错误或程序异常,经常会使用这种方式给用于以提示。在C#中,MessageBox消息对话框位于System.Windows.Forms命名空间中,一般情况,一个消息对话框包含信息提示文字内容、消息对话框的标题文字、用户响应的按钮及信息图标等内容。C#中允许开发人员根据自己的需要设置相应的内容,创建符合自己要求的信息对话框。 
MessageBox消息对话框只提供了一个方法Show(),用来把消息对话框显示出来。此方法提供了不同的重载版本,用来根据自己的需要设置不同风格的消息对话框。此方法的返回类型为DialogResult枚举类型,包含用户在此消息对话框中所做的操作(点击了什么按钮),其可能的枚举值有以下几种:

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

开发人员可以根据这些返回值判断接下来要做的事情。 
在Show方法的参数中使用MessageBoxButtons来设置消息对话框要显示的按钮的个人及内容,此参数也是一个枚举值,其成员如下表所示:

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

在设计中,可以指定上表中的任何一个枚举值所提供的按钮,单击任何一个按钮都会对应DialogResult中的一个值。
在Show方法中使用MessageBoxIcon枚举类型定义显示在消息框中的图标类型,其可能的取值和形式如下表:

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

除上面的参数之外,还有一个MessageBoxDefaultButton枚举类型的参数,指定消息对话框的默认按钮。
下面是一个运用消息对话框的例子:
新建一个Windows应用程序,并从工具箱当中拖拽到窗口里一个按钮,把按钮和窗口的Text属性修改为“测试消息对话框”,双击该按钮,添加如下代码:

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

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

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

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

C# MessageBox 消息对话框的更多相关文章

  1. C#中的MessageBox消息对话框

    关键字:C# MessageBox 消息对话框 在程序中,我们经常使用消息对话框给用户一定的信息提示,如在操作过程中遇到错误或程序异常,经常会使用这种方式给用于以提示.在C#中,MessageBox消 ...

  2. [转载]ExtJs4 笔记(6) Ext.MessageBox 消息对话框

    作者:李盼(Lipan) 出处:[Lipan] (http://www.cnblogs.com/lipan/)版权声明:本文的版权归作者与博客园共有.转载时须注明本文的详细链接,否则作者将保留追究其法 ...

  3. ExtJs4 笔记(6) Ext.MessageBox 消息对话框

    本篇演示消息对话框的用法,ExtJs封装了可能用到的各类消息框,并支持自定义的配置. 如下是用到的html: [html] <h1>各种消息框</h1> <div id= ...

  4. 消息对话框 MessageBoxButtons

    消息对话框MessageBox经常用于向用户显示通知信息.例如,在操作过程中遇到错误或程序异常,经常会使用这种方式给用户以提示,它是特殊类型的对话框. 在C#中,MessageBox消息对话框位于Sy ...

  5. 消息对话框(MessageBox)用法介绍

    在软件中我们经常会弹出个小窗口,给一点点提示.这就会用到消息对话框. 在Win32 API程序中只有MessageBox这一种用法. 而在MFC中就有三各方法: 1.调用API中的MessageBox ...

  6. Qt——消息对话框的设计

    1.消息对话框是什么 消息对话框(MessageBox)提供了一个模态对话框,用来通知用户某些信息,或者用来询问用户一个问题并获得一个答复. 先看下面2张图—— 第一张图是网易云音乐的界面截图,在删除 ...

  7. MFC编程入门之十六(对话框:消息对话框)

    前面几节讲了属性页对话框,我们可以根据所讲内容方便的建立自己的属性页对话框.本节讲解Windows系统中最常用最简单的一类对话框--消息对话框. 我们在使用Windows系统的过程中经常会见到消息对话 ...

  8. 【转】Delphi的消息对话框

    Delphi的消息对话框 输入输出inputBox()函数MessageBox()ShowMessage 对话框是Windows操作系统中程序与用户沟通的一种常见的交互方式,对话框可以向用户提供当前程 ...

  9. 工作总结:VS2010/MFC编程入门之十六(对话框:消息对话框)

    原文地址:http://www.jizhuomi.com/software/171.html 我们在使用Windows系统的过程中经常会见到消息对话框,提示我们有异常发生或提出询问等.因为在软件开发中 ...

随机推荐

  1. 网站怎么布局能解决不同浏览器对CSS解析的差异,使用css reset

    很多地方都提到过CSS Reset这个概念,而且细心的朋友会发现,许多大网站的CSS文件中也含有CSS Reset内容. CSS Reset是什么? 在HTML标签在浏览器里有默认的样式,例如 p 标 ...

  2. Binary Tree Preorder Traversal -- leetcode

    Given a binary tree, return the preorder traversal of its nodes' values. For example: Given binary t ...

  3. $stateProvider resovle 无法找到的原因

    $stateProvider 在写resolve的时候,也要写上controller,不能直接在页面上用ng-controller 来指定!!!! 不然的话,就是报依赖注入异常,找不到该provide ...

  4. Codeforces 570D TREE REQUESTS dfs序+树状数组 异或

    http://codeforces.com/problemset/problem/570/D Tree Requests time limit per test 2 seconds memory li ...

  5. Druid对比Redshift

    Redshift 内部使用了亚马逊取得了授权的ParAccel 实时注入数据 抛开可能的性能不同, 有功能性的不同 Druid 适合分析大数据量的流式数据, 也能够实时加载和聚合数据一般来讲, 传统的 ...

  6. ubuntu16.04彻底卸载mysql并且重新安装mysql

    首先删除mysql: sudo apt-get remove mysql-* dpkg -l |grep ^rc|awk '{print $2}' |sudo xargs dpkg -P 清理完毕: ...

  7. 核弹级的git指令 git filter-branch

      比如一不小心把node模块目录加入git仓库了,导致仓库很大 : git filter-branch --index-filter 'git rm --cached --ignore-unmatc ...

  8. Mac OS X 10.10 执行 Eclipse 提示须要安装 Java

  9. Elasticsearch的javaAPI之query dsl-queries

    Elasticsearch的javaAPI之query dsl-queries 和rest query dsl一样,elasticsearch提供了一个完整的Java query dsl. 查询建造者 ...

  10. android工具类(2)NetWorkHelper 网络工具类

    import android.content.Context; import android.net.ConnectivityManager; import android.net.NetworkIn ...