Silverlight:将图像源设置为MemoryStream

Silverlight:将图像源设置为MemoryStream,silverlight,Silverlight,我的应用程序从Web服务接收一个jpeg文件作为MemoryStream。我需要将图像分配到image.Source。如何做到这一点?中描述了: void proxy_GetImageCompleted(object sender, GetImageCompletedEventArgs e) { MemoryStream stream = new MemoryStream(e.Result); BitmapImage b = new BitmapImage(); b.Se

我的应用程序从Web服务接收一个jpeg文件作为
MemoryStream
。我需要将图像分配到image.Source。如何做到这一点?

中描述了:

void proxy_GetImageCompleted(object sender, GetImageCompletedEventArgs e)
{
    MemoryStream stream = new MemoryStream(e.Result);
    BitmapImage b = new BitmapImage();
    b.SetSource(stream);
    imgImage.Source = b;
}

System.Windows.Controls.Image.Source属性的类型为System.Windows.Media.ImageSource System.Windows.Media.Imaging.BitmapImage是从ImageSource派生的

BitmapImage有一个SetSource(streamsource)方法

因此,使用以下代码可以从流中添加图像:

Stream inStream = [your MemoryStream];

BitmapImage tempImage = new BitmapImage();
tempImage.SetSource(inStream);

YourControlsImage.Source = tempImage;
MSDN链接: