Image控制項載入圖檔後,不會占用原始圖檔的資源。
參考網路文章,文章來源:仙人的設計之路。
一般寫法:
Image1.Source = new BitmapImage(new Uri(@"C:\p001.jpg", UriKind.Absolute));
缺點:圖片檔案會被程式鎖住,使其他程式無法開啟,本身程式要重新載入也會有錯誤產生。
最佳寫法:
FileStream fstream = new FileStream(@"C:\p001.jpg", FileMode.Open);
BitmapImage bitmap = new BitmapImage();
bitmap.BeginInit();
bitmap.StreamSource = fstream;
bitmap.CacheOption = BitmapCacheOption.OnLoad;
bitmap.EndInit();
fstream.Close();
Image1.BeginInit();
Image1.Source = bitmap;
Image1.EndInit();