Простой способ установить CurrentCulture для всего приложения? - PullRequest
11 голосов
/ 18 сентября 2008

В приложении .net 2 winforms, какой хороший способ установить культуру для всего приложения?
Установка CurrentThread.CurrentCulture для каждого нового потока повторяется и подвержена ошибкам.
В идеале я хотел бы установить его при запуске приложения и забыть об этом.

Ответы [ 2 ]

12 голосов
/ 18 сентября 2008

Культура для потока в .NET - это культура для системы (с точки зрения одного приложения / процесса). В .NET нет способа переопределить это, вам придется продолжить установку CurrentCulture для каждого нового потока.

1 голос
/ 18 сентября 2008

Вы можете установить текущую культуру приложения следующим образом:

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());
}

Я не уверен, поможет ли это, потому что я никогда не тестировал его с потоками.

изменить: это не работает. Я думаю, что вы должны установить текущую культуру в каждой теме.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...