C# WebBrowser 对象不加载 Uri

C# WebBrowser object not loading Uri

我相信我已经在这里和其他地方进行了足够的研究,足以证明将其作为一个新问题发布是合理的。我的情况与其他人报告的问题相似但不完全相同。

作为概念证明,我正在构建一个应用程序,它可以访问 Google StreetView 和 StaticMaps API,并以 C# Windows 形式显示它们的图像 (.net 3.5暂时)。该表单具有 WebBrowser 对象、四个用于地址输入的文本框(街道、城市、州、邮政编码)和一个 "Go" 按钮。

这是我的代码(以及来自其他知名 posts/sites 的代码):

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace GoogleMapsTest
{
  public partial class Form1 : Form
  {
    public Form1()
    {
      InitializeComponent();
    }

    private void button1_Click(object sender, EventArgs e)
    {
      webStreetView = new WebBrowser();
      Uri urlString = new Uri("https://maps.googleapis.com/maps/api/streetview?size=300x300&location=" +
         txtStreet.Text.Replace(" ", "+") + "+" +
         txtCity.Text.Replace(" ", "+") + "+" +
         txtState.Text.Replace(" ", "+") + "+" +
         txtZip.Text.Replace(" ", "+"));
      webStreetView.Navigate(urlString);
    }
  }
}

不幸的是,当单击 "GO" 按钮时,表单看起来像是在走动(我可以瞬间看到沙漏),但 WebBrowser 对象仍然是空白的。

这是我尝试测试的内容:

  1. 将测试 URL 插入设计中对象的 URL 属性 模式 - 表单加载图像
  2. 从 调试中的应用程序并在我的浏览器中对其进行了测试 - 工作正常
  3. 根据针对类似问题找到的建议,我尝试添加对 WebBrowser.Refresh() - 没有骰子
  4. 请注意,根据我的其他评论,第 "webStreetView = new WebBrowser();" 行是作为故障排除尝试放入的。

这可能是我忽略的非常简单的事情。如果有人可以帮助我指出正确的方向并找到我所缺少的东西,将不胜感激。

不要创建网络浏览器的新实例。删除webStreetView = new WebBrowser(); 它应该可以工作。

好的,我明白了。显然,WebBrowser 对象的默认边距 (7,7,7,7) 是最低限度的(我将它们设置为零,试图只显示没有边框的干净图像)。

对于那些试图认真回答我这个问题的人,我非常感谢。

致对我的问题投反对票的人:去钓鱼吧。