Windows Phone 7-将图像源设置为内存中的流

时间:2011-01-09 03:57:14

标签: c# image windows-phone-7 stream

是否可以将WP7中的图像源设置为流?通常我会使用BitmapImage在Silverlight中执行此操作,但我在WP7中没有看到该选项。这是我的代码:

var request = WebRequest.CreateHttp("http://10.1.1.1/image.jpg");
request.Credentials = new NetworkCredential("user", "password");    
request.BeginGetResponse(result =>
    {
        var response = request.EndGetResponse(result);
        var stream = response.GetResponseStream();
        // myImage.Source = ??
    }, null);

我问的原因是因为我需要提供凭据来获取图像 - 如果有另一种方法来解决问题我会接受建议。

3 个答案:

答案 0 :(得分:21)

是的,请使用以下代码:

var bi = new BitmapImage();
bi.SetSource(stream);
myImage.Source = bi;

答案 1 :(得分:5)

如果是WriteableBitmap,您可以使用:

        WriteableBitmap wbmp = new WriteableBitmap(1000, 1000);
        Extensions.LoadJpeg(wbmp, stream);
        Image img = new Image();
        img.Source = wbmp;

答案 2 :(得分:0)

试试这个

<Image Name="Img" Stretch="UniformToFill" />

var bitImg= new BitmapImage();
bitImg.SetSource(stream);  // stream is Stream type
Img.Source = bitImg;