原文:WPF調用圖片路徑,或資源圖片javascript
1、加載本項目的圖片
WPF引入了統一資源標識Uri(Unified Resource Identifier)來標識和訪問資源。
其中較爲常見的狀況是用Uri加載圖像。Uri表達式的通常形式爲:協議+受權+路徑
協議:pack://
受權:有兩種。一種用於訪問編譯時已經知道的文件(通常是資源文件),用application:///
一種用於訪問編譯時不知道、運行時才知道的文件(目錄下的文件),用siteoforigin:///
通常用逗號代替斜槓,也就是改寫做application:,,,和pack:,,,
路徑:分爲絕對路徑和相對路徑。通常選用相對路徑,普適性更強
下面,咱們舉一個簡單的例子:
pack://application:,,,/images/my.jpg
固然,WPF默認Uri設置有pack://application:,,,,因此咱們也能夠直接將其寫做:/images/my.jpg
後邊寫例子程序時,爲了讓讀者更好的瞭解Uri,咱們都採用完整的Uri寫法。
下面在講講裝載圖片的兩種方式,一種用XAML引用資源,一種用代碼引用資源。
用XAML引用資源:html
<Image Source="pack://application:,,,/images/my.jpg"/>
也能夠這樣java
<Image Source="/images/my.jpg"/>
用代碼引用資源:app
Image img; img.Source=new BitmapImage(new Uri("pack://application:,,,/images/my.jpg"),UriKind.Relative);
也能夠直接使用代碼中引用圖片資源 spa
image2.Source = new BitmapImage(new Uri("/images/my.jpg", UriKind.Relative));
2、WPF 調用資源圖片code
imagePath = "pack://application:,,,/Solution;component/Properties/../images/star/my.jpg"; imageBrush.ImageSource = new BitmapImage(new Uri(imagePath, UriKind.RelativeOrAbsolute));
3、WPF引用外部項目資源的方法
WPF中若是你使用的資源文件不是本程序集的,是另外的程序集,就能夠這樣作:
1.引用要用的程序集,pack://application:,,,/程序集名稱;component/路徑 ,其中pack://application:,,,能夠省略
示例:component
<Image Source="pack://application:,,,/Skin;component/image/you.png" />
或者htm
<Image Source="/Skin;component/image/you.png" />
4、使用SiteOfOriginblog
imgContent.Source = new BitmapImage(new Uri("pack://SiteOfOrigin:,,,/images/my.jpg"));