2009-03-01 86 views
2

将图像控制源设置为实际显示有一点点延迟。WPF图像负载显示延迟

我需要一些方法来确定何时显示图像,但我似乎无法找到任何可以插入的事件。有人有办法检测到这个吗?

回答

2

假设您的图像是某种位图,请创建一个BitmapImage对象并使用其DownloadCompleted事件。

实例,调用ReadyToDisplay当图像已准备就绪:

从代码:

BitmapImage bmp = new BitmapImage(imageUri); 
bmp.DownloadCompleted += ReadyToDisplay; 
image.Source = bmp; 

从XAML:

<Image> 
    <Image.Source> 
     <BitmapImage UriSource="/images/image.png" DownloadCompleted="ReadyToDisplay"/> 
    </Image.Source> 
</Image> 

我没有测试这些示例代码,所以他们可能有错别字

+0

感谢您的答案,但由于某种原因,事件不会被解雇为本地加载的图像。谷歌还透露,这个事件是不可靠的。对我而言,这个事件根本不会发生。 – 2009-03-02 12:34:39