成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

WPF資源路徑詳細概念詳解

開發 開發工具
WPF資源路徑的內容對于初學者來說是一個比較難以掌握的知識。大家可以通過具體的實際操作來慢慢體會其中包含的內容。

我們在這篇文章中將會為大家詳細介紹有關WPF資源路徑的一些概念介紹。希望大家可以通過本文介紹的內容能加深對WPF的理解。#t#

在項目中增加兩張圖片Content.jpg和Resource.jpg,分別將其生成操作屬性設置為Content和Resource。在界面中增加兩個Image控件ImgContent和ImgResource,在XAML中分別設置Source路徑為Content.jpg和Resource.jpg。

運行后ImgResource能正常顯示圖片,但是ImgContent控件無顯示。將Content.jpg圖片拷貝至應用程序的Debug目錄中,ImgContent控件可顯示圖片。

生成操作設置為Resource,生成的時候資源將添加到程序集中。可以嘗試將原有的圖片刪除,圖片正常顯示。將原有圖片用新圖片替換,仍顯示原有圖片。只有選擇重新生成操作才能更新圖片。

生成操作設置為Content,并不會添加至程序集,而且只有把WPF資源路徑放置在程序運行目錄才能訪問到資源。程序運行目錄調試時是Debug目錄,安裝后就是程序的安裝目錄。

與直接把資源放置在程序運行目錄不同的是,添加Content資源文件,會向程序集(AssemblyAssociatedContentFile)中添加一個定制特性,該程序集記錄文件是否存在及其相對位置。我發現VS2008有一個小Bug,在解決方案管理器中將Content.jpg改名為Con.jpg,Bug目錄下的圖片也做相應的改變。

此時編譯器報錯:文件Con.jpg不是項目的一部分或其“Build Action”屬性未設置為“Resource”。但是按F5運行,生成成功并正常顯示。可見在改變Content資源的時候,程序集中的定制特性沒有做相應的變化。

刪除XAML中的Source屬性,在后臺為兩個圖片控件設置Source屬性。有如下三種WPF資源路徑方式。

第一種

  1. imgContent.Source = new 
    BitmapImage(new Uri(
    "Content.jpg", UriKind.Relative));  
  2. imgResource.Source = new 
    BitmapImage(new Uri
    ("Resource.jpg", UriKind.Relative)); 

第二種

  1. imgContent.Source = new 
    BitmapImage(new Uri("pack:
    //application:,,,/Content.jpg"));  
  2. imgResource.Source = new 
    BitmapImage(new Uri("pack:
    //application:,,,/Resource.jpg")); 

第三種

  1. imgContent.Source = new 
    BitmapImage(new Uri("pack:
    //SiteOfOrigin:,,,/Content.jpg")); 

第一種和第二種都可以訪問相對WPF資源路徑的Resource和Content資源。第三種方式可以訪問網站運行目錄下的Content資源文件以及完全松散的文件。完全松散的文件指那些沒有添加到項目中,只是拷貝在程序目錄中的文件。

應用程序根本不知道它的存在。pack://application:,,,/Content.jpg表示當前項目的資源。它是pack://application:,,,/DllName;Component/Content.jpg的簡寫。將DllName替換成其他程序集,就可以訪問其他程序集的資源。

pack://SiteOfOrigin:,,,/Content.jpg表示從部署位置訪問文件。

pack URI格式是XML文件規范的一部分,具體格式如下 pack://packageURI/partPath。PackageURI實際上是在URI中放一個URI,它是把反斜杠都變成了逗號。packageURI的WPF資源路徑可以志向一個XPS文檔,例如file : /// c: /Document . xps會被編碼為file:...c:,Document.xps。在WPF程序中有兩種URI系統是特別處理的:

siteOfOrigin:/// 編碼后siteOfOrigin:,,,

application:/// 編碼后application:,,,

3個逗號其實是反斜杠編碼過來的。

責任編輯:曹凱 來源: 博客園
相關推薦

2009-12-28 16:54:30

WPF注釋

2009-12-28 16:28:35

WPF元素類型樣式

2009-12-24 15:36:41

WPF邏輯樹

2009-12-28 17:54:49

WPF嵌入式資源

2009-12-28 14:32:31

WPF窗體對話框

2009-12-28 13:38:35

WPF類型轉換器

2009-12-23 09:18:39

WPF開發工具

2009-12-23 17:01:09

WPF Command

2009-12-25 10:05:06

WPF資源

2023-10-04 18:24:54

wpf動態資源

2009-12-25 11:23:43

WPF命令模型

2009-12-28 16:20:50

WPF內嵌樣式

2009-12-29 09:54:27

WPF文字布局

2009-12-23 15:27:34

WPF圖形系統

2009-12-28 14:40:08

WPF屬性

2009-12-28 15:18:29

WPF控件模型

2009-12-23 17:42:37

WPF Control

2009-12-28 11:41:04

WPF 3.5特點

2009-12-28 10:47:58

WPF繪圖

2009-12-29 14:20:27

WPF路徑
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 精品国产一区二区三区久久久蜜月 | 成人免费在线视频 | 久久一本 | 爱爱视频在线观看 | 色在线免费 | 99精品热视频 | 久久国产激情视频 | 一区二区不卡 | 国产精品久久久久久久久久 | 日韩国产在线 | 久久久久久成人 | 久草新在线 | 超黄毛片 | 国产精品久久久久久一区二区三区 | 91久久久久久久久 | 99精品久久久国产一区二区三 | 日本在线网站 | 午夜精品| 成人影音| 久久精品免费 | 国产一级黄色网 | 欧美一区二区在线 | 黑人粗黑大躁护士 | 精品一级| 日韩在线免费视频 | 欧美一区2区三区4区公司 | 一区二区三区欧美 | 成人在线一区二区三区 | 亚洲一区日韩 | 九九热精品视频 | 久久51| 国产一区欧美 | 在线免费观看毛片 | 国产精品日韩欧美一区二区三区 | 久久久久久综合 | 精品日韩一区二区三区 | 亚洲国产成人精 | 亚洲国产精品日本 | 一区在线观看视频 | 成人a网| 精品免费国产视频 |