c#winform程序,修改MessageBox提示框中按钮的文本
用winform的MessageBox是实现不了的,这里我用的是DevExpress控件的XtraMessageBoxForm
例如如果想在一个提示框里修改“是”,“否”按钮的文本时,这个时候我们一般都不好改,只能自己写一个form了,但是我们可以派生一个XtraMessageBoxForm的form之后重写方法就可以做到了
class MyCloseXtraMessageBoxForm : XtraMessageBoxForm
{
protected override string GetButtonText(DialogResult target)
{
switch (target)
{
case DialogResult.Yes:
return "保存";
case DialogResult.No:
return "不保存";
}
return base.GetButtonText(target);
}
}
然后调用的时候按下面的去调用就行了 1 XtraMessageBoxArgs msgBoxArgs = new XtraMessageBoxArgs(this,
"是否保存",
"提示",
new[] { DialogResult.Yes, DialogResult.No, DialogResult.Cancel },
null,
);
MyCloseXtraMessageBoxForm msgBoxForm = new MyCloseXtraMessageBoxForm();
DialogResult dr = msgBoxForm.ShowMessageBoxDialog(msgBoxArgs);
switch (dr)
{
case DialogResult.Cancel:
break; case DialogResult.Yes:
break; case DialogResult.No:
break; default:
throw new ArgumentOutOfRangeException();
}
效果如下:

针对这里面cancel按钮为什么不是“取消”的问题,我还没找到原因,之前都是能显示中文的,实在遇到这个问题,重写cancel按钮的文本就行了
对于按钮都是英文,感觉每次改写很麻烦,我们可以自己写一个汉化类
通过下面代码可使“OK”显示为中文:
首先创建一个继承自Localizer的类:
- using DevExpress.XtraEditors.Controls;
- public class MessboxClass : Localizer
- {
- public override string GetLocalizedString(DevExpress.XtraEditors.Controls.StringId id)
- {
- switch (id)
- {
- case StringId.XtraMessageBoxCancelButtonText:
- return "取消";
- case StringId.XtraMessageBoxOkButtonText:
- return "确定";
- case StringId.XtraMessageBoxYesButtonText:
- return "是";
- case StringId.XtraMessageBoxNoButtonText:
- return "否";
- default:
- return base.GetLocalizedString(id);
- }
- }
- }
这里要注意,要在工程引用中添加DevExpress.Data和DevExpress.XtraEditors。编写上面的类之后在工程的Program.cs文件的main函数中添加:
DevExpress.XtraEditors.Controls.Localizer.Active = new MessboxClass(); 即可。
如果你的Programs的main函数中有创建窗体,那么最好将上述代码写在main函数内第一行,确保能够执行到。显示效果如图:
我这里只改了确定、取消及是否,读者朋友可根据需要修改其他。
c#winform程序,修改MessageBox提示框中按钮的文本的更多相关文章
- winform下的智能提示框
winform下的智能提示框 最近在搞winform的程序,接触到有些可能以后还会用到的功能,所以写到博客园里去,第一可以加深自己的印象,第二可以在以后再遇到同样问题的时候忘记了可以马上回来看看,第三 ...
- 创建一个欢迎 cookie 利用用户在提示框中输入的数据创建一个 JavaScript Cookie,当该用户再次访问该页面时,根据 cookie 中的信息发出欢迎信息。
创建一个欢迎 cookie 利用用户在提示框中输入的数据创建一个 JavaScript Cookie,当该用户再次访问该页面时,根据 cookie 中的信息发出欢迎信息. <html> & ...
- input和textarea标签的select()方法----选中文本框中的所有文本
JavaScript select()方法选中文本框中的所有文本 <input>和<textarea>两种文本框都支持select()方法,这个方法用于选择文本框中的所有文本 ...
- 微信小程序 修改(自定义) 单选/复选按钮样式 checkbox/radio样式自定义
参考文章: 微信小程序 修改(自定义) 单选/复选按钮样式 checkbox/radio样式自定义
- 修改placeholder提示内容的颜色以及文本框输入文字内容的颜色
一般表单文本框提示信息:placeholder=" ",默认颜色是灰色的,输入文本信息也是默认为黑色的,如图所示: 修改placeholder提示内容的颜色关键代码及实现: 实现输 ...
- element-- 修改MessageBox 弹框 中确定和取消按钮顺序
需求:修改弹框中的 取消/确定按钮顺序,及头部和底部背景颜色; 原ui效果图 需求ui效果图 方法:对取消及确定按钮自定义类名,样式重写
- 如何在 messager/alert/confirm等消息提示框中 获取 / 设置 嵌入 html内容中的 input[type=checkbox]等的选中状态?
总结, 有3点: 不能/不要 在 这些消息框 / 提示框/ 对话框中的 回调函数中去写代码: 获取嵌入 内容中input.checkbox的选中状态, 因为 虽然在这些框存在的时候, 这个 check ...
- winform下自绘提示框风格窗体
昨天分享了一个环形滚动条控件,今天分享一个提示框风格的窗体.代码如下: /// <summary> /// 继承自Form,但将FormBorderStyle设置为None /// < ...
- 微信小程序之----消息提示框toast
toast toast为消息提示框,无按钮,如需关闭弹框可以添加事件设置hidden为true,在弹框显示后经过duration指定的时间后触发bindchange绑定的函数. 官方文档 .wxml ...
随机推荐
- Digital root(数根)
关于digital root可以参考维基百科,这里给出基本定义和性质. 一.定义 数字根(Digital Root)就是把一个数的各位数字相加,再将所得数的各位数字相加,直到所得数为一位数字为止.而这 ...
- 3-HOP: A High-Compression Indexing Scheme for Reachability Query
title: 3-HOP: A High-Compression Indexing Scheme for Reachability Query venue: SIGMOD'09 author: Ruo ...
- 策略模式(Strategy Pattern)
策略模式定义了一系列的算法,并将每一个算法封装起来,而且使它们还可以相互替换.策略模式让算法独立于使用它的客户而独立变化. 环境类(Context):用一个ConcreteStrategy对象来配置. ...
- Unity浅析
在分析PRISM项目的时候, 发现里面用到了Unity 这个Component, 主要用于依赖注入的.由于对其不熟悉,索性分析了一下,记载在此,以作备忘. 任何事物的出现,总有它独特的原因,Unity ...
- Mysql快速删除表中重复的数据
表结构 CREATE TABLE T_VENDOR ( ID ) NOT NULL AUTO_INCREMENT COMMENT 'ID', COUNTRY ) DEFAULT NULL COMMEN ...
- 基于CentOS与VmwareStation10搭建Oracle11G RAC 64集群环境:5.安装Oracle RAC FAQ-RAC安装DB软件runInstaller看不到节点
集群安装正常: [root@kmdbrac1 ~]# crs_stat -t -v Name Type R/RA F/FT Target State Host -------------------- ...
- Linux运行与控制后台进程的方法:nohup, setsid, &, disown, screen
我们经常会碰到这样的问题,用ssh登录了远程的Linux服务器,运行了一些耗时较长的任务,结果却由于网络等的不稳定导致任务中途失败.这是由于在用户注销(logout)或者网络断开时,终端会收到 HUP ...
- React JSX语法说明
原文:http://my.oschina.net/leogao0816/blog/379487 什么是JSX? 在用React写组件的时候,通常会用到JSX语法,粗看上去,像是在Javascript代 ...
- FLASH结构
mergedir/code.tmp.bin 压缩未加密文件的FLASH文件 mergedir/sfs/nvm.bin shareData数据文件,未加密.未压缩 数据克隆:DATA/ALL APP ...
- 图片Exif 信息中Orientation的理解和对此的处理
这个问题是在用七牛上传图片后获取宽高时发现的,一张图片,用图片浏览器打开始终是竖图,但是查看属性或者用七牛获取宽高,却发现宽大于高,也就是在属性中这是个横图.这样导致客户端用该宽高来展示图片会出现问题 ...