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

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接: https://blog.csdn.net/gjysk/article/details/40717397
一、路径格式定义
完整的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的语法。

猜你喜欢

转载自blog.csdn.net/gjysk/article/details/40717397