Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/266.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# UWP-动态加载resw资源文件_C#_Uwp_Localization_Resources - Fatal编程技术网

C# UWP-动态加载resw资源文件

C# UWP-动态加载resw资源文件,c#,uwp,localization,resources,C#,Uwp,Localization,Resources,我有一个UWP应用程序,其中包含针对不同文化的Resources.resw。它们放在单独的文件夹下,例如:en\Resources.resw、fr\Resources.resw等。 我试图创建一个功能,用户可以在屏幕上动态选择语言,并从所选语言的资源文件中检索屏幕上的字符串。 我试过: ResourceContext.SetGlobalQualifierValue(“语言”,Culture.Name) 这用于在应用程序启动时设置语言。但不会根据用户选择更新语言。如何在UWP应用程序中动态更新语言

我有一个UWP应用程序,其中包含针对不同文化的Resources.resw。它们放在单独的文件夹下,例如:en\Resources.resw、fr\Resources.resw等。 我试图创建一个功能,用户可以在屏幕上动态选择语言,并从所选语言的资源文件中检索屏幕上的字符串。 我试过:

ResourceContext.SetGlobalQualifierValue(“语言”,Culture.Name)


这用于在应用程序启动时设置语言。但不会根据用户选择更新语言。如何在UWP应用程序中动态更新语言?

您必须设置PrimaryLanguageOverride,然后重置资源管理器

  ApplicationLanguages.PrimaryLanguageOverride = Culture.Name ;
  ResourceManager.Current.DefaultContext.Reset();
然后您必须重新加载页面重新加载页面框架。导航和页面类型


我最初基于适用于Windows应用商店应用程序的代码,但我认为它也适用于UWP应用程序。

您可以尝试设置
ApplicationLanguages.primarylanguagesoverride
,就像官方设置一样。