ローカリゼーションに関する情報が必要です。ローカリゼーション関連の問題のほとんどを処理する C# 2.0 で .net 2.0 を使用しています。ただし、特定の画面の現在のカルチャに対応するアルファベットを手動で描画する必要があります。
これは、Microsoft Outlook の [連絡先] 画面 ([連絡先] の下の [住所カード] ビューまたは [詳細な住所カード] ビュー) に似ているため、右端にアルファベットごとに 1 つずつボタンの列が必要です。
私はそれをエミュレートしようとしていますが、ユーザーにスクリプトの選択を求めたくありません。今の文化が例えば中国語なら、漢字を描きたいです。ユーザーがカルチャ情報を英語に変更したとき (およびアプリケーションを再起動したとき) に、代わりに英語のアルファベットを描画したいと考えています。このクエリの目的を理解していただければ幸いです。
現在のユーザーのカルチャを特定できます (Application.CurrentCulture または System.Globalization.CultureInfo.CurrentCulture はカルチャ関連の情報を提供します)。また、アルファベットをレンダリングするためのすべてのスクリプトもあります。ただし、問題は、カルチャ情報をスクリプトの名前にマップする方法がわからないことです。
つまり、カルチャに対応するスクリプト名を特定する方法はありますか? または、カルチャに対応する Unicode 文字値の範囲を特定することは可能ですか? どちらの方法でも、ボタンのアルファベットを適切にレンダリングできます。
これに関する提案やガイダンスをいただければ幸いです。私のアプローチ (または私が達成しようとしていること) に根本的な問題がある場合は、それも指摘してください。御時間ありがとうございます。
PS: 最も簡単な解決策は、スクリプト名をユーザー設定の一部として構成するか、ユーザーが選択できる言語のリストを表示することです (Outlook 2007 の Contact のように)。しかし、ユーザーが何もしなくても、文化に対応するアルファベットをレンダリングできるかどうかを確認しようとしています。