C#中的MessageBox消息对话框

关键字:C# MessageBox 消息对话框


在程序中,我们经常使用消息对话框给用户一定的信息提示,如在操作过程中遇到错误或程序异常,经常会使用这种方式给用于以提示。在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 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");
复制代码

 

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

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

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

转载:http://www.cnblogs.com/txw1958/archive/2012/09/11/csharp-messagebox.html


  • 6
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: WinForm是微软的一个桌面应用程序开发框架,其包含了MessageBox控件,用于弹出消息框显示信息。但是默认的MessageBox只能显示固定的按钮和图标,无法满足个性化的需求。因此,我们可以自定义一个MessageBox,满足我们特定的需求。 为了实现自定义MessageBox,我们可以创建一个新的窗体,命名为CustomMessageBox。在该窗体,我们可以自定义布局、样式和交互方式。 首先,我们需要定义一个静态的方法,例如Show方法,用于显示自定义MessageBox,并且该方法可以接受不同的参数以满足不同的需求。 在Show方法,我们可以设置CustomMessageBox窗体的标题、文本、图标和按钮等属性。我们还可以根据需要自定义布局,例如添加更多的文本框、复选框或者其他控件。 另外,我们可以为CustomMessageBox窗体定义一些事件,例如按钮的点击事件,以便用户点击按钮后执行相应的操作。可以根据按钮的不同使用不同的事件响应,例如确认按钮可以执行特定的操作,取消按钮可以关闭CustomMessageBox窗口。 最后,在应用程序的代码,可以通过调用CustomMessageBox的Show方法来显示自定义的消息框,传入相应的参数,使其满足我们的需求。 总的来说,通过自定义WinForm的MessageBox,我们可以更加灵活和个性化地显示消息框,满足不同的需求。这样用户在使用我们的应用程序时,将会有更好的用户体验。 ### 回答2: WinForm是一种用户界面开发工具,在.NET平台上使用C#编写窗体应用程序的工具。WinForm提供了MessageBox控件,用于显示提示消息、询问消息及警告消息。但是我们也可以通过自定义MessageBox类来实现个性化的消息框。 要自定义MessageBox,我们可以创建一个继承自Form类的新窗体,然后在该窗体添加各种控件,来实现我们想要的消息框效果。可以自定义消息文字、标题、图标、按钮等。 首先,我们可以设置窗体的样式,例如调整窗体的大小、位置、样式、背景色等。接着,我们可以添加一个Label控件来显示消息内容,并根据需要设置其字体、颜色、对齐方式等属性。 然后,我们可以添加一个PictureBox控件来显示图标,可以是默认的信息图标,也可以是自定义图标。可以根据消息类型来选择不同的图标,例如,信息类型可以使用Info图标,警告类型可以使用Warning图标,错误类型可以使用Error图标等。 接下来,我们可以添加多个按钮,并根据需要设置其样式、文本、事件等属性。例如,我们可以添加一个确定按钮,点击后关闭消息框,并返回一个确定结果给调用者;我们也可以添加一个取消按钮,点击后关闭消息框,并返回一个取消结果给调用者。 最后,在自定义MessageBox添加必要的属性和方法,例如,用于设置消息内容、图标类型、按钮样式等属性的方法,用于获取点击按钮结果的方法等。 总之,通过自定义MessageBox类,我们可以更加灵活地定制化消息框,使其符合我们的设计需求,并提供更好的用户体验。 ### 回答3: WinForm自定义MessageBox可以通过继承MessageBox类,并重写其相应方法来实现。以下是一种实现方式: 首先,新建一个名为CustomMessageBox的类,并继承自MessageBox类。 然后,在CustomMessageBox重写Show方法,该方法用于显示自定义的消息框。 在重写的Show方法,可以通过创建一个自定义的窗体,来代替系统默认的MessageBox窗体。 在自定义的窗体,可以添加自定义的控件,例如Label用于显示消息内容,Button用于表示确定或取消等按钮。 可以通过修改窗体的样式、大小、位置等属性,使其与自己的需求相匹配。 添加事件处理方法,处理按钮的点击事件,以响应用户的操作。 最后,根据用户的操作结果,返回相应的DialogResult,以便调用方可以根据返回值进行相应的处理。 这样,我们就可以调用自定义的Show方法来显示我们定义的消息框了,例如: CustomMessageBox.Show("这是一个自定义的消息框。"); 通过以上步骤,我们可以实现一个自定义的WinForm消息框,以满足我们特定的需求,如更改消息框的样式、增加额外的功能等。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值