.Navigate()在Gecko Web浏览器中的控制问题

时间:2019-09-13 20:51:53

标签: c# url gecko navigateurl

我正在使用Gecko Webbrowser控件。我要做的是首先单击button1转到第一个URL。这样很好!

然后单击button2进入几乎相同的URL。唯一的区别是日期不同,2019-09-26。

如果我在Google Chrome浏览器中执行此操作,则效果很好。但是当我成功登录到2019-09-13的URL后单击button2时。什么都没发生!

button2不在此处导航到URL。为什么我粘贴该网址时Chrome会做出反应。 我想知道是否需要以某种方式导航之前在Gecko控件中重置任何缓存或某些内容? 我试图在button2中导航到https://www.google.com/,但效果很好。

任何想法都会很有帮助!

谢谢!

private void button1_Click(object sender, EventArgs e)
{
       geckoWebBrowser1.Navigate("https://app.someurl.com/web?startDate=2019-09-13");
}
private void button2_Click(object sender, EventArgs e)
{
       geckoWebBrowser1.Navigate("https://app.someurl.com/web?startDate=2019-09-26");
}
private void geckoWebBrowser1_DocumentCompleted(object sender, Gecko.Events.GeckoDocumentCompletedEventArgs e)
{
    geckoWebBrowser1.Update();
}

1 个答案:

答案 0 :(得分:0)

对此进行了测试,没有问题。我创建了一个简单的php页面来显示查询字符串。

Windows 10 Home / Visual Studio 2019 Developer / Geckofx60.32(来自NuGet)

screenshot

public Form1()
{
    InitializeComponent();
}

private void Button1_Click(object sender, EventArgs e)
{
    geckoWebBrowser1.Navigate("http://localhost:81/?test=true");
}

private void Button2_Click(object sender, EventArgs e)
{
    geckoWebBrowser1.Navigate("http://localhost:81/?test=false");
}

private void GeckoWebBrowser1_DocumentCompleted(object sender, Gecko.Events.GeckoDocumentCompletedEventArgs e)
{
    geckoWebBrowser1.Update();
    textBox1.Text = geckoWebBrowser1.Url.ToString();
}

[STAThread]
static void Main()
{
    Xpcom.Initialize("Firefox");

    Application.EnableVisualStyles();
    Application.SetCompatibleTextRenderingDefault(false);
    Application.Run(new Form1());
}

index.php

test = 
<?php echo $_GET["test"]; ?>