`

Pack URI

 
阅读更多
主要用来定位

资源文件,以及Xaml文件等。

Pack URI主要是用于描述一个Package中所包含的组成单元。



1. Pack URI的主要文法

pack://authority/path

其中authority指这里所指的Package的类型,而path主要指这里所指的组成单元在Package中路径。

WPF所支持的authority包括:application:/// 和 siteoforigin:/// :

前者主要用来描述在编绎时就已知的资源(比如:资源文件等被Project所引用的文件在编绎时刻均已知),

而后者主要用来描述在编绎时无法确定其状态的外部资源(比如:硬盘上的某个文件,或者网格上的某个文件)。

注意:在实际构建Pack URI的时需要将authority中所包含的"/"换成",". 因此 application:/// 应该为 application:,,,,siteoforigin:///类推。

2. Pack URI的用法

  (1)表示当前Assembly中所引用的资源时,采用如下格式构建Pack URI

pack://application:,,,/(资源相对于Assembly所在目录的相对路径)

  (2)表示当前Assemby所引用的其它Assembly所引用的资源时,采用如下格式构建Pack URI

pack://application:,,,/AssemblyShortName[;Version][;PublicKey];component/(资源相对于Assembly所在目录的相对路径)

  (3)表示siteoforigin类型的资源时,采用如下格式构建Pack URI

pack://siteoforigin:,,,/(资源相对于当前执行的assembly所在位置的路径)

3. Absolute pack URI and relative pack URI

以上所说的都是Absolute pack URI,格式包含schema://authority/path.字符串比较长,写起来不是很方便。

因此还有一种简化版的relative pack URI,构造时只需要使用path即可。

注意:当表示当前Assembly中所引用的资源时,path需表示目标资源相对于当前路径的相对路径。在路径前加"/"表示相对于Assembly的根目录
分享到:
评论

相关推荐

    WPF 资源(资源的理解和应用)

    如上例所示,访问嵌入资源的Pack URI格式为:“pack://application:,,,/;component/”。 4. 后台查询资源 在代码-behind中,可以使用`FindResource`和`TryFindResource`方法来查询资源。`FindResource`会抛出异常...

    WPF 应用程序开发.pdf

    WPF 通过 **PackURI** 的概念来支持对这些文件的访问,允许开发者以统一的方式引用这些文件,无论它们是存储在应用程序的本地文件系统还是打包在程序集中。 #### 三、WPF 中的 PackURI **PackURI** 是 WPF 中用于...

    WPF之Uri加载图片

    在WPF中,图像资源的URI通常以`pack://`开头,这代表了“打包”协议,它是专为WPF设计的。接着是“授权”部分,这里我们主要关注两种类型: 1. `application:///`:用于访问在编译时已知的资源,这些资源通常位于...

    WPF 加载自定义字体,xmal 和 cs两种加载方式

    注意,`pack://application:,,,/`是Pack URI,用于访问嵌入的资源。 3. **注意事项** - 确保字体文件的版权允许在你的项目中使用。 - 字体文件大小可能会影响应用程序的启动时间和内存占用。如果可能,选择轻量级...

    一款非常好的WPF编程宝典2010 源代码

    11.1.3 pack URI 267 11.1.4 内容文件 268 11.2 本地化 269 11.2.1 构建本地化用户界面 269 11.2.2 使应用程序为本地化 做好准备 270 11.2.3 翻译过程 271 11.3 对象资源 276 11.3.1 资源集合 276 11.3.2 ...

    WPF编程宝典 part1

    7.3.3 pack URI 192 7.3.4 内容文件 193 7.4 本地化 193 7.4.1 构建能够本地化的用户界面 194 7.4.2 使应用程序为本地化做好准备 194 7.4.3 管理翻译过程 195 7.5 小结 200 第8章 元素绑定 201 8.1 将元素绑定到一起...

    WPF编程宝典 part2

    7.3.3 pack URI 192 7.3.4 内容文件 193 7.4 本地化 193 7.4.1 构建能够本地化的用户界面 194 7.4.2 使应用程序为本地化做好准备 194 7.4.3 管理翻译过程 195 7.5 小结 200 第8章 元素绑定 201 8.1 将元素绑定到一起...

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

    var uri = new Uri("pack://application:,,,/Resources/MyImage#1.png", UriKind.Absolute); Stream stream = Application.GetResourceStream(uri).Stream; // 使用stream加载资源 ``` 3. **编码资源名称**: ...

    wpf 异步加载图片完成后再显示,失败则显示本地图片

    string localBackupPath = "pack://application:,,,/Resources/backup.png"; await LoadImageAsync(imageUrl, localBackupPath); img.Source = bitmap; } ``` 通过这种方式,我们可以确保图片在加载完成后才...

    speed-booster-pack:Speed Booster Pack的官方资料库

    Speed Booster Pack :high_voltage: PageSpeed Optimization Suite贡献者:optimocha,speedboosterpack标签:速度,Pagespeed,优化,核心Web生命周期,缓存至少需要:4.6经过测试:5.6需要PHP:5.6稳定标签:4.1.3...

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

    var uri = builder.Uri; StreamResourceInfo streamInfo = Application.GetResourceStream(uri); ``` 4. **使用相对路径**:如果资源文件和执行程序在同一目录或子目录下,可以使用相对路径。但要注意,相对...

    winform调用全局wpf资源样式

    Uri resourceUri = new Uri("pack://application:,,,/Resources.xaml", UriKind.RelativeOrAbsolute); ResourceDictionary resources = (ResourceDictionary)Application.LoadComponent(resourceUri); ``` 对于**...

    WPF学习之页面跳转

    contentFrame.Navigate(new Uri("pack://application:,,,/Pages/MyPage.xaml", UriKind.Absolute)); ``` 四、动态添加控件 在WPF中,动态添加控件是一项实用技能,特别是在需要根据业务逻辑或者用户交互来改变界面...

    android系统判断快捷方式是否存在

    uri = Uri.parse("content://" + spermi + "/favorites?notify=true"); } else { // 对于2.3及之后的版本 uri = Uri.parse("content://" + spermi + "/favorites?notify=true"); } final ContentResolver cr = ...

    WpfApp.rar

    Uri DocumentUri = new Uri("pack://InMemoryDocument.xps"); PackageStore.RemovePackage(DocumentUri); PackageStore.AddPackage(DocumentUri, package); XpsDocument xpsDocument = new XpsDocument(package,...

    wpf_外部引用style

    - 使用`Pack`URI:如果你的项目结构复杂,或者你希望在多个项目之间共享资源,你可以使用`pack`协议来引用资源字典。例如: ```xml <ResourceDictionary Source="pack://application:,,,/YourAssembly;...

    nuri-kim:查看我的投资组合网页!

    作品集网页 应用概述 这是一个交互式的响应式Web应用程序,我构建该应用程序是为了承载最新作品。享受! 介绍 它带您进入介绍页面,其中包含由GSAP处理的有趣动画。...运行Web Pack生产版本 npm run build-prod 启动

    WPF 显示gif

    BitmapDecoder decoder = BitmapDecoder.Create(new Uri("pack://application:,,,/资源路径/mygif.gif"), BitmapCreateOptions.None, BitmapCacheOption.Default); foreach (BitmapFrame frame in decoder.Frames) {...

Global site tag (gtag.js) - Google Analytics