Как я могу изменить CurrentCulture всего процесса (не только текущий поток) в .NET?

Вы могли использовать grep

egrep -l \r'\$ *
15
задан T.Rob 28 November 2011 в 03:22
поделиться

1 ответ

Вам придется изменить языковой стандарт операционной системы, если вы хотите это сделать. По какой причине вы хотите, чтобы BackgroundWorkers запускался в en-US?

У вас должен быть бизнес-уровень, работающий в инвариантной культуре, и только определенная культура для пользовательского интерфейса конечного пользователя.

Если вы используете BackgroundWorker , и для этого вы можете попробовать что-то вроде этого в методе DoWork:

// In DoWork
System.Globalization.CultureInfo before = System.Threading.Thread.CurrentThread.CurrentCulture;
try

{
    System.Threading.Thread.CurrentThread.CurrentCulture = 
        new System.Globalization.CultureInfo("en-US");
 // Proceed with specific code
}

finally
{
    System.Threading.Thread.CurrentThread.CurrentUICulture = before;
}
14
ответ дан 1 December 2019 в 03:04
поделиться
Другие вопросы по тегам:

Похожие вопросы: