2017-10-25 15 views
3

WPFアプリケーションでCurrentUICultureがWindowsによって適切に引き継がれないか、Windowsに誤って格納されます。Windowsで「DE-CH」を設定しても、CurrentUICultureが「DE-DE」になるのはなぜですか?

Windowsの地域と言語の設定は、「Deutsch(Schweiz)」と判明しているすべての場所にあります。アプリケーションのCurrentUICultureは、 "Deutsch(Schweiz)"の代わりに "Deutsch(Deutschland)"を表示します。私はいくつかのコンピュータ(ドメインユーザとローカルユーザ)でテストしました。

どこが問題なのですか? Windowsでこの設定を見つけるのが難しい場所はありますか?

重要:アプリケーションでカルチャを設定できることはわかっています。 Thread.CurrentThread.CurrentUICulture = new CultureInfo("de-ch")

私はちょうどその仕組みがどのように働いているのか、どこから情報を得るのかを知りたいだけです。私のWindowsの設定からここ

いくつかのスクリーンショット:

welcome screen and new user accounts settings

region & language

advanced settings

おかげで、 エイドリアン

+0

コード/設定ファイルで設定しない場合は、システムのローカル環境設定から取得した「CurrentCulture」と同じです – Rahul

+0

Windowsの表示言語は何ですか?あなたはどんなOSですか? – mm8

+0

OSはWindows 10、表示言語は "Deutsch(Schweiz)"です。 CurrentCultureは正しく "Deutsch(Schweiz)"に見えます。しかし、それはCurrentUICultureと同じではありません。 Windowsでは、CurrentCultureは言語ではない形式で定義されています。 – Adrian

答えて

1

これは、Microsoftによって「設計された」ものと思われます。

this questionをお読みください。その上かなり高いupvotedコメントはあり:

ベア・イン・心Microsoftは、自分の知恵で、アメリカ英語と(英国)、英語や他のEnglishesのUI 文化を分離しないこと。 CurrentCultureに関係なく、 は英語のコンピュータで常にen-USになり、地域の設定をローカライズするように設定できる英語のMUIはありません。あなたは地域の設定(CurrentCulture)を変更しますが、CurrentUICultureは常に「脱DE」と「とらわれない国」のまま:この情報はどこから来るのか、私はわからないものの

は、現在のOSの挙動がかなりいることを確認し、 (「en- *」地域設定のコメントでは「en-US」のように)。

関連する問題