我在 Canvas 上添加了 Windows.UI.Xaml.Controls.Image。我正在使用 HttpClient 进行 http 调用以下载图像。我将图像作为流获取并添加为 BitmapImage 对象的源,但未加载图像。谁能告诉我我做错了什么
代码:
var httpClient = new HttpClient();
var content = await httpClient.GetStreamAsync(imageUrl);
var ras = new InMemoryRandomAccessStream();
await content.CopyToAsync(ras.AsStreamForWrite());
bitmap = new BitmapImage();
bitmap.SetSource(ras);
myImage.Source = bitmap;
最佳答案
我设法让它工作了。下面是代码:
var httpClient = new HttpClient();
var contentBytes = await httpClient.GetByteArrayAsync(uri);
var ims = new InMemoryRandomAccessStream();
var dataWriter = new DataWriter(ims);
dataWriter.WriteBytes(contentBytes);
await dataWriter.StoreAsync();
ims.Seek(0);
bitmap = new BitmapImage();
bitmap.SetSource(ims);
myImage.Source = bitmap;
关于C# Metro 应用程序如何从网络加载图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11759809/