Analytics

2012年3月8日 星期四

[WPF]使用 BitmaoImage控制項指定圖片路徑(Use Bitmap Image control specifies the path to the image)


問題
使用 BitmaoImage控制項指定圖片路徑 WPF的Image控制項沒有圖片路徑的屬性,所以如果你用image1.Source=@”/images/dog.png”;會出現錯誤,內容是ImageSource無法轉換為String




解決方法
要做到指定圖片的功能,可以加入下列方法:
private BitmapImage GetImageSource(string appName,string imageFolder,string imageName)
{
    var uriSource = new Uri(string.Format(@"/{0};component/{1}/{2}", appName, imageFolder,imageName), UriKind.Relative);
    return  new BitmapImage(uriSource);
}
叫用方式:
imgOrange.Source = GetImageSource(”wpfApplication1”,”images”,”dog.png”);
另外要判斷圖片內容,可以用以下方法:
private string GetImagePath(Image source)
{
   return source.Source.ToString().Replace("pack://application:,,,", "");
}
叫用方式:
//要比較的圖檔路徑
string dagPath= GetImageSource(”wpfApplication1”,”images”,”dog.png”).ToString();
if (GetImagePath(imgOrange) == dagPath)
{
    //do something ….}
}

沒有留言:

熱門文章