【问题标题】:Load image from URL to pictureBox将图像从 URL 加载到图片框
【发布时间】:2013-02-19 22:45:10
【问题描述】:

我正在尝试将几个图像从 URL 加载到图片框。 我的问题是“pictureBox.Load(URL)”或“pictureBox.ImageLocation = URL”不起作用。 我不知道为什么,我认为是因为 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# 中,我只在图片框中得到一个红色的 X。

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

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

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


今天我在三台不同的计算机上测试了代码,并使用了不同的 Internet 连接;家庭 DSL、公司 DSL 和 UMTS/3G 冲浪棒。所有这些都没有任何代理,也没有经过病毒扫描测试。

在每种情况下它都不起作用,就像我在第一篇文章中写的那样。

在我访问 Firefox 或 IE 中的一些 URL 后,这些 URL 的图像出现在我的应用程序中。所有其他人仍然是红色 X。

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

恐龙

【问题讨论】:

  • 直接在问题中发布您的代码。您可以使用问题下方的“编辑”链接在实际代码中进行编辑。将代码缩进四个空格,或突出显示它并使用编辑窗口上方的 {} 按钮。
  • 这对我有用。看看你的 IE 浏览器正在发送/接收什么。这可能是由于 IE 上的代理...?
  • 不,我没有代理。

标签: c# url picturebox


【解决方案1】:
pictureBox1.ImageLocation = "http://www.micoequipment.com/products/large/MF_260_l.jpg"; //should work

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

【讨论】:

  • 已编辑!是的,它是正确的图片框;-) 当我尝试加载本地图像时,它可以工作。 google.de/images/icons/product/chrome-48.png 之类的另一个链接也可以使用。
  • 这不是安德鲁的答案。我也遇到了这个问题,肯定和扩展有关。
【解决方案2】:

@安德鲁:

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 和图片框中也不起作用。

【讨论】:

    【解决方案3】:

    这应该可以工作,因为您正在从远程 URL 加载图像:

    pictureBox1.Load(URL);
    

    【讨论】:

      猜你喜欢
      • 2013-03-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-07-13
      • 2011-05-03
      • 1970-01-01
      相关资源
      最近更新 更多