[WPF]使用Pack URI路径訪问二进制资源

一、路径格式定义
完整的URI定义为:
pack://application,,,[/可选程序集名称;][可选版本;][目录名称/]文件名
缩略后的写法是:
[目录名称/]文件名

二、在XAML代码中使用URI路径
完整路径的使用:
<Image x:Name="ImageBg" Source="pack://application:,,,/Resources/Images/Hydrangeas.jpg" Stretch="Fill" />

相对路径的使用:
<Image x:Name="ImageBg" Source="Resources/Images/Hydrangeas.jpg" Stretch="Fill" />

三、后台代码中的使用
// 相对路径。
Uri imageUri = new Uri(@"Resources/Images/Hydrangeas.jpg", UriKind.Relative);
this.ImageBg.Source = new BitmapImage(imageUri);


// 绝对路径。
Uri imageUri = new Uri(@"pack://application:,,,/Resources/Images/Hydrangeas.jpg", UriKind.Absolute);
this.ImageBg.Source = new BitmapImage(imageUri);

四、注意事项
1、路径使用从右向左的正斜线(/)表示;
2、在C#代码中使用相对路径则须要将UriKind必须为Relative,并且代表根文件夹的/能够省略。


3、在C#代码中完整写法代表绝对路径。UriKind必须为Absolute,并且代表根文件夹的/不能够省略。
4、路径能够使用类似于DOS的语法。

原文地址:https://www.cnblogs.com/bhlsheji/p/5137068.html