改回英文,你需要准备一个en-us的资源。

解决方案 »

  1.   

    谢谢,问题是,我即使把winform的Language属性改为English (United States),我发现IDE并没有为我生成一个Form1.en-US.resx文件啊。开始我改成中文的时候,IDE是为我自动生成了一个Form1.zh-CN.resx文件的。这该怎么办呢?
      

  2.   

    你已经把Localizable改回False。你把把Localizable还设成True,然后把语言设置成美语,看看是不是就会自动生成相应的语言文件了。
    谢谢,问题是,我即使把winform的Language属性改为English (United States),我发现IDE并没有为我生成一个Form1.en-US.resx文件啊。开始我改成中文的时候,IDE是为我自动生成了一个Form1.zh-CN.resx文件的。这该怎么办呢?
      

  3.   

    果然是如你所说,我把语言设置再次改为Localization = True, Language选择English(United States)以后,IDE会为我自动生成一个Form1.en-US.resx文件,我在这个状态下修改button1和button2的Text,再运行就会显示英文的button1/button2但是现在更诡异的事情发生了:
    我再次把Languge选择成为Chinese (Simplified, PRC),设计器里面显示中文,重新编译一遍,运行显示界面却还是英文的。
    即使我把Localizable和Language反复设置几遍到Chinese (Simplified, PRC),结果还是一样。仍然是: 设计器历史中文,运行起来是英文,如下截图
      

  4.   

    你的系统环境是英文的吧?
    你可以在控制面板里面切换成中文看看,是不是就显示中文了。
    另外,也可以在代码中指定语言,如下代码,第7-8行引入命名空间,第20和21行是指定英语或者中文:using System;
    using System.Collections.Generic;
    using System.Drawing;
    using System.Windows.Forms;// 添加命名空间
    using System.Globalization;
    using System.Threading;namespace Localization
    {
    /// <summary>
    /// Description of MainForm.
    /// </summary>
    public partial class MainForm : Form
    {
    public MainForm()
    {
    // 在调用 InitializeComponent 函数之前。
    //Thread.CurrentThread.CurrentUICulture = new CultureInfo("en-US");
    Thread.CurrentThread.CurrentUICulture = new CultureInfo("zh-CN");
    //
    // The InitializeComponent() call is required for Windows Forms designer support.
    //
    InitializeComponent();
    }
    }
    }
      

  5.   

    谢谢,我的问题在于,我第一次加入中文resx编译的时候,Language是中文,界面可以显示中文。可就是当我再次添加了英文resource,并且把Language改回中文的时候,即使我重新编译,这次还是显示英文,怎么都显不回中文了。这是为什么?
      

  6.   

    你把你编译的放到中文的操作系统运行一下看看是中文还是英文。如果是中文的话,那么请看接着看下面
    不是说没有编译中文的,是因为系统自动根据操作系统语言选择了英文。你第一次加入中文显示中文,因为英文系统没有英文可以选择,只能选择中文。当然你可以按照上面的代码手动切换界面语言。
    谢谢,我的问题在于,我第一次加入中文resx编译的时候,Language是中文,界面可以显示中文。可就是当我再次添加了英文resource,并且把Language改回中文的时候,即使我重新编译,这次还是显示英文,怎么都显不回中文了。这是为什么?