最近一朋友问了一个问题,他想引用一个本地图片到页面上的Image控件,可是发现用Application的GetResourceStream得到的结果是个null值,当时第一个想到的就是他图片的Build Action属性值设置的不对,于是自己写了个Demo测试,

Stream sr = Application.GetResourceStream(new Uri("face.png", UriKind.Relative)).Stream;
BitmapImage bi = new BitmapImage();
bi.SetSource(sr);
image.Source = bi;

发现测试成功,图片正常显示,(Build Action:Content),但是在朋友那不行,设置相同,后来查看代码发现,他的项目是Class Library,把图片的Build Action:Resource就一切OK了。所以也引起了对记忆中不清楚的Build Action的值兴趣,特写此文,让自己清楚下。

Build Action 属性有多种

None:此文件将被忽略不参与编译和输出(这个可以简单理解为不要这个文件不)

Compile:文件将被编译为Microsoft 中间语言(IL),如文件扩展名为cs的文件(简单理解,代码文件都是这个类型的)

Content:文件将会打包进xap文件当中,以独立文件使用

Page:在WP当中,xaml页面文件都属于Page,除App.xaml文件外

Resource:文件将被编译到xap文件包的.dll文件内

Content和Resource的区别,Content是把资源文件打包到xap中,Resource是把资源打包到Dll中;

Content的引用:Application.GetResourceStream(new Uri("face.png", UriKind.Relative)).Stream;

Resources的引用:Application.GetResourceStream(new Uri("/DLL;component/face.png", UriKind.Relative)).Stream;

关于Windows Phone的资源文件Build Action属性的更多相关文章

  1. Windows下 Qt 资源文件(.qrc)文件 的 编写与应用

    最近遇到一些项目都包含了qrc文件,这个是Qt的资源文件,如果在pro文件中不包含的话,在编译的时候会提示找不到相应资源的错误. 下面说一下手动修改pro和编写qrc文件的方法. 我们直接在命令行下执 ...

  2. [Windows] VS打开资源文件(.rc)时显示 error RC2247 : SYMBOL name too long

    源解决方案:error RC2247 : SYMBOL name too long 解决方法: 将所有要包含的文件用 APSTUDIO_HIDDEN_SYMBOLS 宏包起来,保存后关闭当前的资源文件 ...

  3. Maven,预加载资源文件

    预加载资源文件需要先启用功能: <build> <resources> <resource> <directory>src/main/resources ...

  4. vc 国际化的资源文件处理

    MS Windows操作系统是一个世界上广泛使用的操作系统,对于不同语种的国家MS Windows有相应语种的版本.在不同语种的Windows平台上应该运行相应语种的应用程序.也就是说程序的用户界面( ...

  5. springboot打包去除资源文件,启动时指定配置文件位置,使用log4j2替换默认logback

    springboot打包时,去掉资源文件 <build> <resources> <resource> <directory>src/main/reso ...

  6. struts2官方 中文教程 系列七:消息资源文件

    介绍 在本教程中,我们将探索使用Struts 2消息资源功能(也称为 resource bundles 资源绑定).消息资源提供了一种简单的方法,可以将文本放在一个视图页面中,通过应用程序,创建表单字 ...

  7. 在.NET中读取嵌入和使用资源文件的方法

    转http://www.jb51.net/article/84660.htm 本文分别介绍了使用GetManifestResourceStream读取嵌入资源,和使用. resx资源文件嵌入资源,希望 ...

  8. 【spring Boot】spring boot获取资源文件的三种方式【两种情况下】

    首先声明一点,springboot获取资源文件,需要看是 1>从spring boot默认的application.properties资源文件中获取 2>还是从自定义的资源文件中获取 带 ...

  9. 【spring boot】3.spring boot项目,绑定资源文件为bean并使用

    整个例子的结构目录如下: 1.自定义一个资源文件 com.sxd.name = 申九日木 com.sxd.secret = ${random.value} com.sxd.intValue = ${r ...

随机推荐

  1. 在Win7的IIS上搭建FTP服务及用户授权——转载!!

    原文地址:http://blog.sina.com.cn/s/blog_6cccb1630100q0qg.html FTP服务 FTP是文件传输协议(File Transfer Protocol)的简 ...

  2. C语言复杂的函数指针声明

    复习C语言ING,发现复杂的函数指针声明看不懂,百度半天终于略知一二. 讲的比较详细的一篇blog: http://blog.csdn.net/megaboy/article/details/4827 ...

  3. jquery绑定事件,解绑事件

    unbind([type],[data]) 是 bind()的反向操作,从每一个匹配的元素中删除绑定的事件.如果没有参数,则删除所有绑定的事件.你可以将你用bind()注册的自定义事件取消绑定.如果提 ...

  4. spring bean之间的关系:继承;依赖

    概要: ' 继承Bean配置 Spring同意继承bean的配置,被继承的bean称为父bean,继承这个父Bean的Bean称为子Bean 子Bean从父Bean中继承配置,包含Bean的属性配置 ...

  5. CSS用法简介

    CSS(Cascading Style Sheets层叠样式表)是一种用来表现HTML(标准通用标记语言的一个应用)或XML(标准通用标记语言的一个子集)等文件样式的计算机语言. 1.基本使用语法   ...

  6. 编写可维护的JS 06

    7.事件处理 //典型用法 function handlerClick(event){ var popup = document.getElementById('popup'); popup.styl ...

  7. Git上手指南

    (写在最前:这篇随笔是我在学习git时参考资料+实践出来的,其中一些问题是在实践中遇到的,希望对大家有帮助,还有很多不完整的地方.如果有什么错误的地方欢迎随时向我提出来) 在Git教程之前,我们先来了 ...

  8. SQL练习之求解填字游戏

    SELECT * FROM dbo.spt_values

  9. 字符串分割--Java中String.split()用法

    转载自:http://blog.163.com/zs_note/blog/static/199386112201110804233558/ 在java.lang包中有String.split()方法, ...

  10. C++_知识点_结构体/枚举/联合

    //C++中结构体的不同之处 #include <iostream> #include <string> using namespace std; int main(void) ...