zoukankan      html  css  js  c++  java
  • WPF-资源-二进制资源

    二进制资源可以用3种不同的的方式进行打包:

    1. 嵌入程序集。
    2. 在编译时应用程序已知的松散文件。
    3. 在编译时应用程序不知道的松散文件。

    定义二进制资源

      设定文件的生成操作

    • Resource

        将资源放入程序集中。

    • Content

        将资源作为一个松散文件,但向程序集种添加一个定制特性,该程序集将记录文件是否存在及其相对位置。

    注意:

    不要使用嵌入式资源(Embedded Resource)

    XAML引用资源只支持Resource和Content。不支持嵌入式资源

    访问二进制资源

    通过统一资源标识符(URI)从代码或者XAML访问这些资源文件。

    <StackPanel>
            <Button ToolTip="ContentResource">
                <Image Height="20" Width="20" Source="./Resource/Content.png"></Image>
            </Button>
            <Button ToolTip="Resource">
                <Image Height="20" Width="20" Source="./Resource/new.jpg"></Image>
            </Button>
        </StackPanel>

    注意:已编译的Xaml不能通过简单的文件名引用当前目录下的二进制资源,除非把这个资源加到项目中。

    如果资源没有在项目中。项目中的XAML文件不能引用到这些文件。

    使用特殊语法访问不在项目中的文件。把文件直接靠别到Debug文件夹下,调试程序可以引用到这个不在项目中的文件。

    <Button ToolTip="Resource">
                <Image Height="20" Width="20" Source="pack://siteOfOrigin:,,,/Content.png"></Image>
            </Button>

    特殊语法的含义是:在程序部署的位置访问资源。

    常见资源URI

    /log.jpg Resource或Content
    /b/log.jpg  
    /c:/log.jpg 松散文件,绝对路径
    file://c:/log.jpg 松散文件,绝对路径
    \pc1log.jpg 共享路径
    http://aaa.net/log.jpg 网址文件
    /Dll;Component/log.jpg 另一个程序集,Resource生成
    /Dll;Component/b/log.jpg 同上
    pack://siteOfOrigin:,,,/log.jpg 松散文件,部署位置找文件

    表中所有的引用都隐式使用了“pack://application;,,,”;不在项目中的文件要使用“siteOfOrigin”

  • 相关阅读:
    tomcat内存溢出问题解决
    redis知识点汇总
    activiti全部知识点
    Python_Note_Preview_03_URL
    S&P_09_协方差(协方差矩阵)与相关系数
    Linear_algebra_06_ 内积空间
    Linear_algebra_05_线性方程组的解理论
    Linear_algebra_04_向量空间
    Linear_algebra_03_矩阵
    Linear_algebra_02_行列式
  • 原文地址:https://www.cnblogs.com/snake1118/p/12859435.html
Copyright © 2011-2022 走看看