我正在開發 WinUI 3 應用程式,目前堅持本地化。盡管我為不同的文化撰寫了單獨的 resw 資源檔案并進行了本地化,但x:Uid我找不到在應用程式運行時更改語言的方法。
設定Windows.Globalization.ApplicationLanguages.PrimaryLanguageOverride僅適用于設定啟動語言。
WinUI 3 中的運行時本地化甚至可能嗎?
uj5u.com熱心網友回復:
原答案:
我認為你在正確的軌道上。如果您嘗試在運行時更改語言,請呼叫將設定Windows.Globalization.ApplicationLanguages.PrimaryLanguageOverride為新語言“字串”的方法。但是在那之后,您還必須
還要記得在 Package.appxmanifest 檔案中添加你的語言宣告

uj5u.com熱心網友回復:
我創建了新專案 -空白應用程式,使用 WAP 打包(桌面中的 WinUI 3)和最新的專案模板,這些模板帶有 VS 擴展Windows APP SDK C# VS2019。正如您所注意到的 - 我正在使用 VS 2019,社區版。我在下面附上一個專案的 csproj 配置。

主視窗中有一個導航到主頁面的框架。主頁上只有一個按鈕,點擊即可進入 LanguagePage。

目標是更改語言、清除導航堆疊并導航回主頁面。然而,各種場景SetAppLanguage并沒有產生想要的結果。

請查看https://www.py4u.net/discuss/731870 - 嘗試了所有場景,對 GUI 沒有影響。盡管如此,Windows.ApplicationModel.Resources.Core.ResourceContext.GetForCurrentView();還是會拋出 COMException: 'Resource Contexts 可能不會在沒有 CoreWindow 的執行緒上創建。(0x80073B27)'
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/391707.html
