为整个应用程序设置CurrentCulture的简便方法?

时间:2008-09-18 14:40:15

标签: .net winforms localization

在.net 2 winforms应用程序中,为整个应用程序设置文化的好方法是什么? 为每个新线程设置CurrentThread.CurrentCulture是重复且容易出错的 理想情况下,我想在应用程序启动时设置它并忘记它。

2 个答案:

答案 0 :(得分:12)

.NET中线程的文化是系统的文化(由单个应用程序/进程查看)。没有办法在.NET中覆盖它,你必须继续为每个新线程设置CurrentCulture。

答案 1 :(得分:1)

您可以这样设置应用程序当前文化:

static void Main()
{
    System.Globalization.CultureInfo cultureInfo = new System.Globalization.CultureInfo("fi-FI");
    Application.CurrentCulture = cultureInfo;
    Application.EnableVisualStyles();
    Application.SetCompatibleTextRenderingDefault(false);
    Application.Run(new Form1());
}

我不确定它是否有帮助,因为我从来没有用线程测试它。

编辑:它不起作用。我认为你必须在每个主题中设定当前的文化。