MessageBox.Show("a", "", MessageBoxButtons.YesNoCancel);

解决方案 »

  1.   

    取决于操作系统的语言设置。我用的是英文版的Windows,自然就是英文版的Yes、No
    如果你实在要改,就自己画一个对话框代替MessageBox吧。
      

  2.   

    有没有方法将MessageBox上面的汉字替换成英文的
      

  3.   

    就是修改了,修改为英文的,因为这个软件使用的配置文件,设置为英文就是英文版的。现在就是窗体为英文的,但是窗体里面的MessageBox是中文的。
      

  4.   

    你说的英文状态是什么意思?估计只是你程序本身的语言切换功能而已。你应该拿到一台装了英文Windows的系统上测试。你在中文系统下,出现中文是很正常的,这也没有什么关系。因为老外如果使用中文版系统,他绝对能看懂“确定、取消”,如果他根本不懂中文,是不会安装中文系统的。
      

  5.   

    就是程序根据配置文件,确定是英文还是中文状态
    我去找台英文版的系统试试
    thank you 
      

  6.   

    这个是你系统版本的问题,如果你使用的是系统内置的 MessageBox,只要修改系统环境为英文就可以了,不需要换英文版操作系统。
      

  7.   

    挺麻烦的http://www.codeproject.com/Articles/18399/Localizing-System-MessageBox
      

  8.   

    自己写一个MessageBox呗,也不是啥麻烦事
      

  9.   


    严格来说这个方法只是玩弄了一个小技巧。通过挂钩对话框处理函数人工替换文字。问题是,这样的方法毫无价值。你还得如法炮制对OpenFileDialog、ColorDialog、AboutDialog、OLEInsertObjectDialog等等各种系统调用的标准对话框的替换,不然你无法保证程序不会冒出中文。而且根据ID去查找文本的方式理论上可靠性也得不到保证,比如在阿拉伯语言的系统(从右到左),或者未来某个版本的Windows中得到支持。