首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从WebRequest流创建ImageBrush

从WebRequest流创建ImageBrush
EN

Stack Overflow用户
提问于 2015-05-09 05:22:29
回答 1查看 385关注 0票数 0

我在从Stream创建ImageBrush时遇到了困难。下面的代码用于使用ImageBrush填充WPF Rectangle

代码语言:javascript
复制
        ImageBrush imgBrush = new ImageBrush();
        imgBrush.ImageSource = new BitmapImage(new Uri("\\image.png", UriKind.Relative));
        Rectangle1.Fill = imgBrush;

我想要做的是调用一个WebRequest并获取一个Stream。然后我想用Stream图像填充我的矩形。代码如下:

代码语言:javascript
复制
        ImageBrush imgBrush = new ImageBrush();
        WebRequest request = WebRequest.Create(iconurl);
        WebResponse response = request.GetResponse();
        Stream s = response.GetResponseStream();
        imgBrush.ImageSource = new BitmapImage(s);  // Here is the problem
        Rectangle1.Fill = imgBrush;

问题是我不知道如何使用response.GetResponseStream()设置我的imgBrush.ImageSource。如何在我的ImageBrush中使用Stream

EN

回答 1

Stack Overflow用户

发布于 2015-05-09 19:06:35

BitmapImage constructors没有以Stream作为参数重载。

若要使用响应流,应使用无参数构造函数并设置StreamSource属性。

它看起来像这样:

代码语言:javascript
复制
// Get the stream for the image
WebRequest request = WebRequest.Create(iconurl);
WebResponse response = request.GetResponse();
Stream s = response.GetResponseStream();

// Load the stream into the image
BitmapImage image = new BitmapImage();
image.StreamSource = s;

// Apply image as source
ImageBrush imgBrush = new ImageBrush();
imgBrush.ImageSource = image;

// Fill the rectangle
Rectangle1.Fill = imgBrush;
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30133061

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档