【问题标题】:What is application's site of origin and when to use it什么是应用程序的原始站点以及何时使用它
【发布时间】:2011-08-27 22:33:32
【问题描述】:
  • 什么是应用程序的原始站点
  • 何时使用它
  • 与之关联的资源文件的构建操作如何
  • pack://application:,, 和 pack://siteoforigin:,,, 的区别是什么?

【问题讨论】:

    标签: wpf xaml resources window pack


    【解决方案1】:

    源站点是应用程序可执行程序集(即用户运行的 .exe)的位置(即物理文件夹)。因此,URI 是相对于该文件夹的。

    例子:你有

    • C:\Programs\MyApp\MyApp.exe
    • C:\Programs\MyApp\MyIcon.bmp
    • C:\Programs\MyApp\Icons\MyOtherIcon.bmp

    运行 MyApp.exe 时,包 URI 为 pack://siteoforigin:,,,/MyIcon.bmppack://siteoforigin:,,,/Icons/MyOtherIcon.bmp。这意味着您必须将这些文件复制到那些地方。

    相比之下,应用程序包 URI 是指嵌入在程序集中的资源(通过使用构建操作“资源”)。

    【讨论】:

    【解决方案2】:

    如果您不想受到在编译时声明应用程序资源的限制,还有另一种选择。不,这不涉及使用完全限定的 Uris 来引用 Internet 上的资源。虽然,确实支持。 WPF 为您提供应用程序的概念源站点的抽象,即部署应用程序的位置。例如,如果您的应用程序是从 http://nerddawg.blogspot.com 启动的,那么您的应用程序的源站点是 http://nerddawg.blogspot.com 。要访问位于该位置的 images/AuntDahlia.gif 中的图像,您可以在标记中指定:

    <Image Source="pack://siteoforigin:,,,/images/AuntDahlia.jpg" />
    

    了解更多

    http://nerddawg.blogspot.com/2005/11/resources-in-windows-presentation.html

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-09-17
      • 2011-12-27
      • 1970-01-01
      • 2014-11-02
      • 2013-07-01
      • 2016-12-23
      • 2010-12-10
      • 2013-08-11
      相关资源
      最近更新 更多