내가 내 WPF 응용 프로그램에 대한 문화 정보를 설정하기 위해 노력하고있어 (필요한 모든 .NET에서 작동 4.0 및 최신을 프레임 워크)와 내가 좋아하는 몇 가지 예, 발견했습니다 :이 같은WPF 앱에서 문화 정보 설정을 변경하거나 설정해야하는 이유는 무엇입니까?
CultureInfo.DefaultThreadCurrentCulture = new CultureInfo("en-US");
CultureInfo.DefaultThreadCurrentUICulture = new CultureInfo("en-US");
그리고 뭔가를 :
protected override void OnStartup(StartupEventArgs e)
{
Thread.CurrentThread.CurrentCulture = new System.Globalization.CultureInfo("en-US"); ;
Thread.CurrentThread.CurrentUICulture = new System.Globalization.CultureInfo("en-US"); ;
FrameworkElement.LanguageProperty.OverrideMetadata(
typeof(FrameworkElement),
new FrameworkPropertyMetadata(
XmlLanguage.GetLanguage(CultureInfo.CurrentCulture.IetfLanguageTag)));
base.OnStartup(e);
}
이것을 달성하는 올바른 방법은 무엇입니까? 그리고 어디에서 설정해야합니까? 윈도우가 열리거나로드 될 때마다 설정하는 것이 좋지 않습니까?
Main() 메서드와 문화권의 출력을 생성하는 모든 스레드가 시작될 때 (none 일 수도 있음). .Net 4.6 이상에서는 main 메소드에서만 설정해야하지만 .net 4.0을 사용 중입니다. –
어디서? App.xaml.cs의 OnStartup 메소드는 어떻습니까? – mm8
[WPF 앱에서 전역으로 문화권 설정 (en-IN)] 가능한 복제본 (https://stackoverflow.com/questions/7454024/setting-culture-en-in-globally-in-wpf-app) – Sinatr