2010-06-01 87 views
5

我使用Image控件來顯示文檔:因爲它需要大約一半的第二顯示屏幕上的圖像WPF圖片/呈現事件

<Image x:Name="cImage" SnapsToDevicePixels="True" ... /> 

我第一顯示與預覽:

RenderOptions.SetBitmapScalingMode(cImage, BitmapScalingMode.NearestNeighbor); 
cImage.Source=...; 

然後我設置了一個計時器將模式更改爲HighQuality。

是否有一個WPF在完成渲染時觸發的事件,我可以使用而不是定時器?

回答

3

您可以嘗試使用圖像源更新事件,但我並不總是有任何運氣使用此。

更好的解決方案,取決於你的源是添加一個處理程序,當它被加載。

你可以嘗試這樣的事:

BitmapImage src = new BitmapImage(); 
src.BeginInit(); 
src.UriSource = tURI; 
src.EndInit(); 
imgImage.SetCurrentValue(Image.SourceProperty, src); 
src.DownloadCompleted += ImageDownloadCompleted; 

那麼你可以編寫代碼ImageDownloadCompleted更改分辨率。