私のマシンには英語の Windows 7 がインストールされており、選択されたデフォルトの言語は英語です (「地域と言語の設定」を使用)。DateTimeFormat.ShortDatePattern
次のC#ステートメントを使用して読んだとき:
System.Threading.Thread.CurrentThread.CurrentUICulture.DateTimeFormat.ShortDatePattern
こんな結果になりました
"M/d/yyyy"
私もこのステートメントを試しましたが、それでも同じ文字列が得られました。
System.Globalization.CultureInfo.CurrentUICulture.DateTimeFormat.ShortDatePattern
"M/d/yyyy"
しかし、今は「地域と言語の設定」から言語を変更し、デンマーク語を選択しました。ここで、[形式] タブに切り替えて、短い日付形式で"M/d/åååå"
、デンマーク語にローカライズされたものを表示します。これは、言語を変更すると、日時の形式も変更されることを意味します。
ただし、私のアプリケーションでは、ロードされた CurrentUICulture が正しい、つまりデンマーク語の da-DK であっても、上記の英語の書式文字列を取得します。地域設定に示されているように、ローカライズされた ShortDateFormat を表示したいと考えています。自分でローカリゼーションを行う必要がありますか、それともそれを行うためのビルドはありますか? ここで何か不足している場合はお知らせください。
編集:この情報は、ピーターとの議論に基づいて質問をさらに明確にするために追加されています。
Format コンボボックスには、Danish(Denmark) と表示されます。形式はデンマーク語などで正しく読み取られますが、文字列は M/d/åååå ではなく M/d/yyyy と表示されます。これは、DatePicker コントロールに表示したい正確な文字列 M/d/åååå です。つまり、透かしはローカライズされた ShortDatePattern を表示する必要があります。まだまだ苦戦中…