• 关于Windows Phone的资源文件Build Action属性


           最近一朋友问了一个问题,他想引用一个本地图片到页面上的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;

  • 相关阅读:
    Android 5.X新特性之RecyclerView基本解析及无限复用
    Android 网络框架之Retrofit2使用详解及从源码中解析原理
    Android 源码解析之AsyncTask
    Business Logic
    WHO AM I
    黑洞
    俄罗斯方块
    还记得八皇后的解法吗
    汝之蜜糖,吾之砒霜
    项目为什么会失败
  • 原文地址:https://www.cnblogs.com/suncoolcat/p/3327508.html
Copyright © 2020-2023  润新知