【发布时间】:2016-01-11 16:58:08
【问题描述】:
我尝试创建一个具有包含不同视图的主窗口的通用 Windows 应用程序。
ContentFrame.Navigate(typeof(SimplePage));
ContentFrame 是 XAML 框架,SimplePage 是视图。
该项目有两个本地化。因此我在解决方案中创建了一个文件夹Strings,其中包含两个文件夹en 和de,每个文件夹都包含一个Resources.resw 文件。
我想使用 SimplePage 视图中 resw 文件中的字符串。因此我尝试了:
tbSimpleInput1.Text = ResourceManager.Current.MainResourceMap.GetValue("Resources/dataToolDiameter", ResourceContext.GetForCurrentView()).ValueAsString;
我也尝试过使用ResourceContext.GetForViewIndependentUse() 而不是ResourceContext.GetForCurrentView(),但在尝试调试时总是得到NullReferenceException。
在不同视图中访问资源的正确方法是什么?
这是 Visual Studio 中解决方案的屏幕截图:
【问题讨论】:
-
您的资源文件中有“dataToolDiameter”吗?如果您的语言环境设置为德国,则需要在 de 文件夹下搜索 Resources 文件。
-
是的,资源定义正确。当我在主窗口中使用相同的语句时它可以工作,只有当我想在子视图中使用它时才会出现此错误。
标签: localization uwp