WPF 中资源路径的问题

Posted lonelyxmas

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了WPF 中资源路径的问题相关的知识,希望对你有一定的参考价值。

原文:WPF 中资源路径的问题

?WPF 中资源路径的问题

1. 引用当前工程的资源(注意xxxx.png的build action 应设置为Resource 或Embedded Resource)

[csharp]?view plaincopy
  1. <ImageBrush?ImageSource="/currentAssemblyName;component/subfoldername/xxxx.png"/>??

?

2. ?引用其它工程的资源? (注意xxxx.png的build action 应设置为Resource 或Embedded Resource)

  1. <ImageBrush?ImageSource="pack://application:,,,/otherAssemblyName;component/subfolder/xxx.png"/>??

?

3. 引用相对路径下的资源(注意最好将xxx.png 的copy to output directory属性设置成 always copy )

  1. <ImageBrush?ImageSource="pack://siteoforigin:,,,./subfolder/xxx.png?"/>??

?

4. 引用绝对路径下的资源?

  1. <ImageBrush?ImageSource="C:\test\xxx.png"/>??

?

5. 当在使用pack 前缀的路径时,如果出现如下错误:System.UriFormatException: Invalid URI: Invalid port specified, 而你使用的pack路径又确实没有错误。这是因为pack:// scheme 没有注册,解决方案有两个:

a.?????? 实例化一个System.Windows.Application, 在实例化过程中会调用PackUriHelper class

[csharp]?view plaincopy
  1. if?(!UriParser.IsKnownScheme("pack"))???
  2. {??
  3. ????????new?System.Windows.Application();???
  4. }??

?

b.????? 调用一次System.IO.Packaging.PackUriHelper.UriSchemePack????

[csharp]?view plaincopy
  1. string?s?=?System.IO.Packaging.PackUriHelper.UriSchemePack; ?

以上是关于WPF 中资源路径的问题的主要内容,如果未能解决你的问题,请参考以下文章

WPF备忘录WPF图片资源路径介绍

在WPF里面如何引用相对路径(非资源)?

WPF调用图片路径,或资源图片

WPF 如何找到资源文件路径包含 # 号的文件

存储 WPF 图像资源

WPF编程之找不到资源mainWindow.xaml