Chinaunix首页 | 论坛 | 博客
  • 博客访问: 875084
  • 博文数量: 372
  • 博客积分: 10063
  • 博客等级: 中将
  • 技术积分: 4220
  • 用 户 组: 普通用户
  • 注册时间: 2012-02-24 11:36
文章分类

全部博文(372)

文章存档

2012年(372)

分类: 虚拟化

2012-03-14 17:20:27

Metro Style App 之资源操作

运行环境请参考:Metro Style App之文件访问操作示例,下面介绍的是资源操作的一些体会。

对资源的操作方式主要有以下几种:

1、在Resources.resw文件中定义,然后通过x:Uid获取

使用方式是在x:Uid与之对应,如

这样TextBlock显示的文本就是hello world!, TextBlock的宽度是100,当然可以自己调整.

2、在文件中访问。如访问图片

3、使用ResourceLoader.GetString方法获得Resources.resw定义的资源。本例中resourceLoadBtn显示内容为Hello sting1.

var resourceLoad = new ResourceLoader();
resourceLoadBtn.Content = resourceLoad.GetString("string1");

注意:此时string1默认保存在Resources.resw文件中,如果resw的文件名不是Resources.resw,则要进行如下操作,如:

void anotherResourceBtn_Click(object sender, RoutedEventArgs e)
{
var resouceLoad = new ResourceLoader("AnotherResources");
anotherResourceBtn.Content = resouceLoad.GetString("anotherString");
}

AnotherResources为AnotherResources.resw文件.

4、在其它项目中获得所需的资源。新建一个AppResourcesLibrary类库,然后建一个Resources.resw文件。

在Resources.resw文件中的定义如下:

下面是调用的方法

void AppResourceLibraryBtn_Click(object sender, RoutedEventArgs e)
{
var resourceloader = new ResourceLoader("AppResourcesLibrary/Resources");
AppResourceLibraryBtn.Content = resourceloader.GetString("string1") + " from " + AppResourcesLibrary.LocalizedNamesLibrary.Libraryname;
}

AppResourcesLibrary.LocalizedNamesLibrary.Libraryname这个属性定义在 AppResourcesLibrary类库中的LocalizedNamesLibrary类,

该类的定义如下:

public static class LocalizedNamesLibrary
{
static ResourceLoader resourceLoader = null;
public static string LibraryName {
get
{
String name;
GetLibraryName("libraryname", out name);
return name;
}
}
private static void GetLibraryName(string resourceName, out string resourceValue)
{
if (resourceLoader == null)
{
resourceLoader = new ResourceLoader("AppResourceClassLibrary/Resources");
}
resourceValue = resourceLoader.GetString(resourceName);
}
}

该类的定义跟在同一个项目中资源的获取定义一样,此处不在介绍。

总结:以上只是一些资源操作的基础知识,更详细的资料请参考Metro style app的sample。里面还有资源的管理等。

以上只是自己的一点学习心得,如果有什么意见和建议,欢迎大家提出!当然自己还在学习研究中共同学习,一起进步!下一篇将介绍一些Metro app style的动画操作。

阅读(396) | 评论(0) | 转发(0) |
0

上一篇:Redis 实践笔记

下一篇:极简数独1.0源码

给主人留下些什么吧!~~