我使用綁定到UI上的圖像屬性的viewmodel,並且viewmodel包含ImageSource屬性。我使用下面的函數WPF凍結BitmapImage不顯示
private BitmapImage GetImageFromUri(Uri urisource)
{
if (urisource == null)
return null;
var image = new BitmapImage();
image.BeginInit();
image.UriSource = urisource;
image.EndInit();
image.Freeze(); //commenting this shows the image if the routine is called from the proper thread.
return image;
}
對於一些奇怪的原因,在下面的代碼,當我打電話凍結我的BitmapImage,它不會出現在主window.I得不到異常或死機設置該屬性。任何人都可以幫助我嗎? 我設置圖像屬性異步,所以我需要能夠使用創建的圖像,假設GetImageFromUri調用是從一個線程以外的UI線程。
你是什麼意思呈現它? – ak3nat0n
以圖形方式呈現。設置源代碼不會使其可視化,WPF首先需要渲染圖像。看起來你在WPF得到機會之前凍結了它。 –