WPFの多言語動的切り替えを実現する方法?

WPFの多言語動的切り替えを実現する方法?

前回の記事「C# 多言語利器 - ResX Manager」をご覧になったネットユーザーから、次のような疑問が寄せられました。「この多言語切り替えは再起動しないと更新できないが、何か方法はあるのか?」

最終更新 2021/02/17 9:28
沙漠尽头的狼
読了目安 1 分
カテゴリ
WPF
タグ
.NET C# WPF 国際化 多言語

前の記事「C# 多言語ツール - ResX Manager」をご覧になった読者から、次のような疑問が出ました。

この多言語切り替えは再起動せずにリフレッシュできない方法はありますか?

再起動なしの多言語切り替え方法は?

実際にあります。国内のオープンソースの大神が提供するWPF拡張ライブラリに、多言語切り替えの実装が含まれています。まずは効果をご覧ください。

動的多言語切り替えデモ

具体的な使い方は以下をご覧ください。

1 オープンソースライブラリによる多言語動的切り替え

GitHub アドレス:クリックしてアクセス

WpfExtensions リポジトリ詳細

インストール方法

NuGet で検索してインストールするだけです。

NuGet 検索インストール

2 使用方法

2.1 メインプロジェクトの初期化前

リソースファイルの参照を追加します。

I18nManager.Instance.Add(LQClass.AdminForWPF.I18nResources.UiResource.ResourceManager);

2.2 Prism モジュール内の初期化

Prism を使用してモジュール化する場合、モジュールのコンストラクターでもモジュールのリソースファイルを参照する必要があります。

I18nManager.Instance.Add(LQClass.ModuleOfLog.I18nResources.UiResource.ResourceManager);

動的言語切り替え

ここはかなり柔軟です。言語切り替え時に言語識別子を設定ファイルに保存し、プログラム起動時に設定された言語を適用します。動的切り替え時も同じコードを使用します。

var culture = new System.Globalization.CultureInfo(language);
I18nManager.Instance.CurrentUICulture = culture;

3 多言語参考プロジェクト

さらに探索

関連読書

その他の記事
同じカテゴリ / 同じタグ 2025/01/26

WPF カスタムXMLファイルによる国際化

この記事では、WPFプログラムでカスタムXMLファイルを使用して国際化を実現する方法について詳しく説明します。必要なNuGetパッケージのインストール、言語リストの動的取得、言語の動的切り替え、コードおよびXAMLインターフェースでの翻訳文字列の使用などを含み、ソースコードのリンクも提供し、開発者がWPFアプリケーションの国際化を簡単に実装できるように支援します。

続きを読む
同じカテゴリ / 同じタグ 2024/01/25

C# WPFにおけるFluentValidationの応用

この記事では、C# WPFプロジェクトでFluentValidationを使用してプロパティ検証を行う方法と、MVVMパターンを通じてこの機能を実装する方法について詳しく説明します。

続きを読む