将图像从URL加载到pictureBox

时间:2013-02-19 22:45:11

标签: c# url picturebox

我试图将多个图片从网址加载到图片框。 我的问题是" pictureBox.Load(URL)"或" pictureBox.ImageLocation = URL"不起作用。 我不知道为什么,我认为这是因为网址没有.jpg这样的扩展名。

private void button3_Click(object sender, EventArgs e)
{
    string URL = "https://internetmarke.deutschepost.de/internetmarke/franking/image/view/1403556118.do";
    pictureBox1.ImageLocation = URL;
}

该URL适用于Firefox,并显示图片。但是在IE中,它不起作用,我认为这与它在.NET中不起作用的原因相同。

IE表示"未知文件类型"并希望下载" 1403556118.do"文件。

在C#中我只在pictureBox中得到一个红色的X.

当我第一次尝试在IE中加载它时,它适用于pictureBox(IE缓存?)

有人知道将这些图像加载到pictureBox的另一种可能性吗?

已编辑:已添加示例代码。


今天,我已经在三台不同的计算机上测试了这些代码并使用了不同的Internet连接;家庭DSL,公司DSL和UMTS / 3G Surf-Stick。所有没有任何代理,并且没有virusscan测试。

在每一个场景中它都没有用,就像我在第一篇文章中写的一样。

在我访问Firefox或IE中的某些网址后,这些网址的图片显示在我的应用程序中。所有其他人都是红色的X.

是否有任何不同的(老派^^)方法来加载这些图像,例如将HTTP-Stream下载到字节数组中然后将其复制到pictureBox.Image中?

恐龙

3 个答案:

答案 0 :(得分:2)

pictureBox1.ImageLocation = "http://www.micoequipment.com/products/large/MF_260_l.jpg"; //should work

确保可以通过网络浏览器访问图像(之前测试)。另外,请确保您正在调用正确的图片框:) 它对我有用。

答案 1 :(得分:0)

@Andrew:

pictureBox1.ImageLocation = "http://www.micoequipment.com/products/large/MF_260_l.jpg";

这是作品!

pictureBox1.ImageLocation = "https://internetmarke.deutschepost.de/internetmarke/franking/image/view/1403556118.do";

这不起作用!

您的链接和我的链接都可以在Firefox中使用。但我的链接在IE中不起作用,它在.NET和PictureBox中不起作用。

答案 2 :(得分:0)

这应该可行,因为您是从远程URL加载图像:

pictureBox1.Load(URL);