如何判断WPF位图图像是否无法加载?

时间:2011-08-08 13:43:00

标签: c# wpf imaging

我正在使用以下代码将图像从文件加载到位图图像类中,以便以特定大小显示给用户:

                BitmapImage resized = new BitmapImage();
                FileStream fs = new FileStream(ImageSource, FileMode.Open);
                MemoryStream ms = new MemoryStream();
                fs.CopyTo(ms);
                fs.Close();
                resized.BeginInit();
                resized.CacheOption = BitmapCacheOption.OnDemand;
                resized.DecodePixelHeight = (int)(_imageBaseHeight * zoomRate);
                resized.DecodePixelWidth = (int)(_imageBaseWidth * zoomRate);
                resized.StreamSource = ms;
                resized.EndInit();
                ImageDisplay = resized;

问题在于,有时候,在特别大的图像上,这将无声地失败并显示空白图像而不会引发异常。是否有一个标志,我可以在EndInit()之后检查以确保图像已加载?

2 个答案:

答案 0 :(得分:3)

使用resized.DownloadFailed事件获取通知。

答案 1 :(得分:0)

您也可以使用ImageFailed事件。