WPF異なる局在化方法

使用して、ファイルを動的に次のカテゴリを使用して、言語を切り替えることができますRESX:

パブリック クラスLanguageManager:INotifyPropertyChangedの
    { 
        プライベート 読み取り専用のResourceManager _resourceManager。
        プライベート 静的な 読み取り専用のLazy <LanguageManager> _lazy = 新しいレイジー<LanguageManager>(()=> 新しいLanguageManager());      
        公共の 静的 LanguageManagerインスタンス=> _lazy.Value。
        パブリック イベントPropertyChangedEventHandlerのPropertyChanged; 

        プライベートLanguageManager()
        { 
            _resourceManager = 新規のResourceManager(typeof演算(ラング))。
        } 

        パブリック 文字列 この [ 名] 
        { 
            取得
            { 
                場合(名前== nullの
                { 
                    スロー 新しい例外ArgumentNullException(がNameOf(名前を)); 
                } 
                戻り_resourceManager.GetString(名); 
            } 
        } 

        公共 ボイドChangeLanguage(のCultureInfoのCultureInfo)
        { 
            CultureInfo.CurrentCulture = のCultureInfo。
            CultureInfo.CurrentUICulture = のCultureInfo。
            PropertyChanged?.Invoke(この新しい PropertyChangedEventArgs(" 項目[] " )); 
        } 
    }
コードの表示

どのように使用するには:

 < テキストブロックのFontSize = "20" マージン= "10" テキスト= " {[文字列1]を結合、ソース= {X:静的ローカル:LanguageManager.Instance}} " />
コードの表示

言語の切り替え:

LanguageManager.Instance.ChangeLanguage(新しいのCultureInfo( "ZH-CN"));
コードの表示

送信元アドレス

 

おすすめ

転載: www.cnblogs.com/yxhq/p/12405303.html