如何为整个C#应用程序的默认文化信息(how to set default culture info

2019-07-03 19:20发布

我想设置默认文化信息为类或整个应用程序。

例如在土耳其3,2 =英语3.2

这样的应用程序使用我的地方,但我希望它为默认情况下使用

System.Globalization.CultureInfo.InvariantCulture

我怎样才能将其设置为默认为特定类或整个应用程序

Answer 1:

不为整个应用程序或特定类别。

的CurrentUICulture和的CurrentCulture是每个线程能够设置为这里讨论是否有一个整体的应用程序设置文化的一种方式? 目前所有的线程和新主题? 。 你不能改变InvariantCulture根本。

示例代码更改当前线程的文化:

CultureInfo ci = new CultureInfo(theCultureString);
Thread.CurrentThread.CurrentCulture = ci;
Thread.CurrentThread.CurrentUICulture = ci;

对于类你可以设置/还原重要方法里面的文化,但它会显著安全使用为以文化作为一个参数最格式相关的方法适当覆盖:

(3.3).ToString(new CultureInfo("fr-FR"))


Answer 2:

4.0,则需要通过设置文化为每个线程的阿列克谢介绍了这个自己管理。 但随着4.5,你可以定义一个文化为应用程序域,这是处理此操作的首选方式。 相关的API是CultureInfo.DefaultThreadCurrentCulture和CultureInfo.DefaultThreadCurrentUICulture 。



文章来源: how to set default culture info for entire c# application