テスト目的で、ダミー アプリケーションをローカライズして、ニーズに最適なものを確認しようとしています。
WPF Localization Extensionを試してみたかった.
だから私:
まったく新しい WPF アプリケーションを作成し、メイン ウィンドウを作成しました。
ナゲットによる WPF ローカリゼーション拡張機能への参照を追加しました。
名前付きの1つのresx
Localization.resx
と1つのresxを作成しましたLocalization.fr.resx
「WelcomeText」キーのテキストを両方の resx に追加しました。
メイン ウィンドウでは、次のように入力します。
xmlns:lex="http://wpflocalizeextension.codeplex.com" lex:LocalizeDictionary.DesignCulture="en" lex:ResxLocalizationProvider.DefaultAssembly="LocalizedApplication" lex:ResxLocalizationProvider.DefaultDictionary="Localization"
ウィンドウ宣言で
TextBlock
グリッド内に 1 つ追加しました。<TextBlock Text="{lex:Loc WelcomeText}" />
アプリケーションを実行すると、テキストが英語で表示されます。
ここで、App.cs コンストラクターに次を追加します。
public App():base()
{
Thread.CurrentThread.CurrentUICulture = new CultureInfo("fr");
Thread.CurrentThread.CurrentCulture = Thread.CurrentThread.CurrentUICulture;
CultureInfo.DefaultThreadCurrentCulture = Thread.CurrentThread.CurrentUICulture;
CultureInfo.DefaultThreadCurrentUICulture = Thread.CurrentThread.CurrentUICulture;
}
FR でアプリケーションをテストします。再構築して再起動しましたが、まだ英語でメッセージが表示されます。
だから最初に:私は何を間違えましたか?次に: 実行時に現在のカルチャを変更するにはどうすればよいですか?