0

我正在创建一个简单的网络浏览器重新加载程序。在我的程序中,我正在使用这些控件

axMozillaBrowser,
Button,
progressBar,
TextBox

我正在尝试加载网页“5”次。下面是我使用 webBrowser 控件(Internet Explorer 的一个实例)时有效的代码

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 WindowsFormsApplication1
{
public partial class Form1 : Form
{
    public Form1()
    {
        InitializeComponent();
    }

    private void button1_Click(object sender, EventArgs e)
    {
        while (progressBar1.Value !=5 )
        {
            webBrowser1.Navigate(textBox1.Text);
            while(webBrowser1.ReadyState != webBrowserRedyState.Complete)
            {
            if (webBrowser1.ReadyState == webBrowserRedyState.Complete)
            {
                    progressBar1.Value =+ 1;
            }
            }
        }
    }

    private void Form1_Load(object sender, EventArgs e)
    {
        progressBar1.Maximum = 5;
        textBox1.Text = "www.google.com";
    }
}
}

这是我使用 axMozillaBrowser 控件(Mozilla 浏览器的一个实例)时不起作用的代码。这不会加载网页,它的等待光标只是闪烁。

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 WindowsFormsApplication1
{
public partial class Form1 : Form
{
    public Form1()
    {
        InitializeComponent();
    }

    private void button1_Click(object sender, EventArgs e)
    {
        while (progressBar1.Value !=5 )
        {
            axMozillaBrowser1.Navigate(textBox1.Text);
            while(axMozillaBrowser1.ReadyState != MOZILLACONTROLLib.tagREADYSTATE.READYSTATE_COMPLETE)
            {
            if (axMozillaBrowser1.ReadyState == MOZILLACONTROLLib.tagREADYSTATE.READYSTATE_COMPLETE)
            {
                    progressBar1.Value =+ 1;
            }
            }
        }
    }

    private void Form1_Load(object sender, EventArgs e)
    {
        progressBar1.Maximum = 5;
        textBox1.Text = "www.google.com";
    }
}
}
4

1 回答 1

0

您的浏览器控件是否有导航(或类似的)事件?例如,您可以在简单的逻辑循环中使用它,您的控件导航到集合中的第一个 URL,然后,当导航完成时,导航到第二个 URL 和下一个。

upd:对不起,我又读了一遍,现在看不懂。upd2:但我建议您找到 Navigated 和 Navigating 事件以及 NavigationState 属性。

于 2012-09-26T12:19:06.930 回答