KK的技术人生

技术改变世界
图片等资源的引用路径问题

SL中,我们经常会遇到资源引用的问题,尤其是图片资源。这里就有两个地方需要注意的:

  1. 图片放哪里?
  2. Xaml中怎么引用图片?

    下面我会通过一个简单的Demo来讲解一下这两个问题。

    首先,新建两个工程,如下图:

    这里,我们在SL工程中的Images文件夹放了4张图片(其中Image.jpg可以忽略),在Web工程的ClientBin目录下也建了个叫Images的文件夹,下面只有一张我们要用来外部引用的图片。

    右键SL工程中任意一张图片=>属性(Property),我们会看到下面这样的配置菜单。

     

    其中两个配置项是我们所关心的,一个是Build Action,另外一个是Copy To Output Directory

    其中Build Action会决定VS是如果处理你这个文件的,点开下拉菜单会看到可以选择的编译动作有好几个,这里我们只讲下面几个(因为我只研究过这几个^_^,如果其他选项你知道的话,请告诉我)。

  3. Resource —— 资源会被打包在程序集内部
  4. Content——资源会被打包在Xap包里面
  5. None——资源既不会被集成到程序集内,也不会打包到xap包中。不过我们可以通过设置CopyToOutputDirectory选项让其自动拷贝到xap包所在目录。

    再来说引用的问题。

  6. 使用前置 / 引用资源时,SL会从当前Xap包中查找资源,找不到的话会到Xap包所在的目录查找
  7. 不使用前置 / 引用资源时,SL会从当前程序集内查找资源,如果找不着则会到Xap包所在目录查找其他选项你知道的话
  8. 你也可以使用/{程序集名};component/{图片资源路径}的方式来访问,这样就查找的路径就限定在程序集内部了,也就是那些标记为Resource的资源。

     

    image

       

posted on 2008-11-16 23:30  KK2038  阅读(1501)  评论(4编辑  收藏  举报