博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
WPF应用加载图片URI指定需要注意的地方
阅读量:6526 次
发布时间:2019-06-24

本文共 1234 字,大约阅读时间需要 4 分钟。

应用程序(.exe)加载图片:

可以省略"pack://application:,,," 打头,因为系统运行时需要的图片文件在Exe程序集(组合体)中;譬如:

 

动态链接库(.dll)加载图片:

然而如果图片文件在另一个DLL文件中,系统运行加载图片资源如果省略pack:就默认找本地程序集(Exe文件)就会找不到。就必须如下:

另外:添加到项目中的图片文件需要设置为“不复制”, “Resource”

资料:

WPF引入了统一资源标识Uri(Unified Resource Identifier)来标识和访问资源。其中较为常见的情况是用Uri加载图像。Uri表达式的一般形式为:协议+授权+路径 协议:pack:// 授权:有两种。一种用于访问编译时已经知道的文件,用application:///。一种用于访问编译时不知道、运行时才知道的文件,用siteoforigin:///。在这里加
  

  WPF引入了统一资源标识Uri(Unified Resource Identifier)来标识和访问资源。其中较为常见的情况是用Uri加载图像。Uri表达式的一般形式为:协议+授权+路径

  协议:pack://

  授权:有两种。一种用于访问编译时已经知道的文件,用application:///。一种用于访问编译时不知道、运行时才知道的文件,用siteoforigin:///。在这里加载图片时,我们选用前者,即application:///,但是书写时候,我们一般用逗号代替斜杠,也就是改写作application:,,,。

  路径:分为绝对路径和相对路径。这里我们选用相对路径,普适性更强。

  下面,我们举一个简单的例子:

  pack://application:,,,/images/my.jpg

  当然,WPF默认Uri设置有pack://application:,,,,所以我们也可以直接将其写作:

  /images/my.jpg

  后边写例子程序时,为了让读者更好的了解Uri,我们都采用完整的Uri写法。

  下面在讲讲装载图片的两种方式,一种用XAML引用资源,一种用代码引用资源。

  用XAML引用资源:

<Image Source="pack://application:,,,/images/my.jpg"/>

  用代码引用资源:

Image img;          

img.Source=new BitmapImage(new Uri("pack://application:,,,/images/my.jpg"),UriKind.Relative);

转载于:https://www.cnblogs.com/chriskwok/p/3196009.html

你可能感兴趣的文章
RedHat linux YUM本地制作源
查看>>
apache端口占用问题
查看>>
本地Office Project计划表同步到SharePoint2013任务列表的权限问题
查看>>
Windows2008 R2 GAC权限问题
查看>>
洛谷——P1469 找筷子
查看>>
几句话就能让你明白:网络地址转换(NAT)
查看>>
springboot项目自定义注解实现的多数据源切换
查看>>
如何用javascript正则表达式验证身份证号码是否合法
查看>>
ccf 201803-1 跳一跳(Python实现)
查看>>
特此说明
查看>>
使用flume替代原有的scribe服务
查看>>
用脚本来定制ESXI安装镜像
查看>>
微软企业级加解密解决方案MBAM架构
查看>>
没有苦劳,只有功劳!
查看>>
基于ThinkPHP写的一个简单的CMS系统
查看>>
笔记——搭建简易NFS服务
查看>>
Exchange 2010 DAG local and Site DR/Failover and Fail back
查看>>
LigerUI - 树表格的数据来自Server
查看>>
认证技术概述
查看>>
制作Windows Server 2003/08 image详细步骤与OpenStack介绍
查看>>