6

使用:

Console.WriteLine(System.Globalization.CultureInfo.CurrentCulture.ToString());

我明白了"en-US"

例如,我应该在我的控制面板设置(区域和语言?)中更改什么以获取其他内容"en-CA"

4

4 回答 4

10

我应该在我的控制面板设置(区域和语言?)中更改什么以获得其他内容,例如“en-CA”。

您可以为当前线程更改它,例如:

System.Threading.Thread.CurrentThread.CurrentCulture = new CultureInfo("en-CA");

接着:

Console.WriteLine(System.Globalization.CultureInfo.CurrentCulture.ToString());

会返回:

en-CA
于 2014-01-23T17:53:01.690 回答
5

根据我的经验,文化是由操作系统的版本决定的。不是真正的控制面板中的设置。我们过去必须让多个 VM 运行多个版本的 Windows 来测试我们基于文化的功能

于 2014-01-23T17:54:24.387 回答
0

您可以像这样在 App.config 中定义一个键

<configuration>
    <appSettings>
        <add key="DefaultCulture" value="en-CA" />
    </appSettings>
</configuration>

并在您的应用程序中读取该值并设置文化

 CultureInfo culture = new CultureInfo(ConfigurationManager.AppSettings["DefaultCulture"]);
    Thread.CurrentThread.CurrentCulture = culture;
    Thread.CurrentThread.CurrentUICulture = culture;
于 2014-01-23T18:38:38.727 回答
0

您可以在区域和语言控制面板中更改语言。从标记为格式的下拉组合框中选择英语(加拿大)。请注意,这将适用于用户并且是用户区域设置。

附带说明一下,从 Windows 8 开始,用户区域设置默认为您的 Windows 显示语言,并且 Windows 应用商店应用程序使用语言列表来对齐用于生成日期和时间字符串以及数字格式等的语言。 , 使用用于检索资源的语言。.Net 尝试参与其中,因此对于 Windows Store Apps,更改语言列表是获得此效果的首选方式。

于 2014-01-23T23:25:51.940 回答