Win8开发中如何加载字符串资源(C#)windows
你能够从资源文件或库等对象中加载字符串资源。app
建立资源文件的方法:ide
在资源项目或库、控件、软件开发包中建立一个Strings文件夹在文件夹,而后在他的下面在建立一个新的文件夹,将新文件夹命名为 "en-US"。该资源文件放在根据BCP-47语言标记命名的文件夹中。请参阅如何使用限定符命名资源,了解语言限定符的详细信息和一组常见的语言标记。ui
你能够经过BCP-47语言标记命名建立多个资源文件spa
而后再在每一个资源文件中建立1~N个资源文件(.resw)对象
注意:大部分应用程序仅须要单个默认资源文件,在一些应用程序中最好将资源分离到多个资源文件中,以实现组件分离blog
建立结果如图:资源
并在各个资源文件中编辑几个字符串开发
特别注意的是在名称中你不能建立一个”String111“而后再建立一个“String111.Text”在这种状况下“String111.Text“是不会被识别出来的字符串
我接下来介绍从资源文件或库中加载字符串的方法:
从资源文件中加载字符串:
一、UI加载方式
<TextBlockx:Uid="ApplicationName123"></TextBlock>
2、C#加载方式
var res = Windows.ApplicationModel.ResourceLoader('Resources');
res.GetString('Applictionname');
注意:这里的Resources是你的资源文件的文件名(默认是Resources)
从库中加载字符串:
新建一个AppResourcesLibrary类库,而后建立资源文件,跟上面写的步骤是同样的
一、UI加载方式
<TextBlockx:Uid="/AppResourcesLibrary/Resources/ApplicationName123"></TextBlock>
二、C#加载方式
void AppResourceLibraryBtn_Click(objectsender, RoutedEventArgs e)
{
varresourceloader = new ResourceLoader("AppResourcesLibrary/Resources");
resourceloader.GetString("ApplicationName")
}
这里的AppResourcesLibrary替换为你的类库名称,Resources替换为你的资源文件名
部分资源来源自:http://msdn.microsoft.com/en-us/library/windows/apps/hh965323.aspx