我相信我已经在这里和其他地方进行了研究,足以证明将此作为一个新问题发布。我的情况与其他人报告的问题类似,但并不完全相同。
作为概念验证,我正在构建一个可以访问Google StreetView和StaticMaps API的应用,并在C#Windows窗体(暂时为.net 3.5)中显示它们的图像。该表单包含WebBrowser对象,四个用于地址输入的TextBoxes(Street,City,State,Zip)和一个“Go”按钮。
这是我的代码(以及其他信誉良好的帖子/网站,这应该是我所需要的):
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对象仍然是空白的。
以下是我尝试测试的内容:
这可能是我忽略的非常简单的事情。如果有人能帮助我指出正确的方向并找到我所缺少的东西,我将不胜感激。
答案 0 :(得分:1)
好的,我明白了。显然,WebBrowser对象的默认边距(7,7,7,7)是最小的(我将它们设置为零,试图只显示没有边框的干净图像)。
对于那些试图认真回答这个问题的人,我非常感谢你。
对于投票我的问题的人:去钓鱼。
答案 1 :(得分:0)
不要创建Web浏览器的新实例。删除webStreetView = new WebBrowser();
,它应该有效。