使用WebBrowser显示IE窗口

时间:2016-02-23 23:08:57

标签: c# winforms internet-explorer webbrowser-control

我正在开发一个加载网页并计算加载时间的程序。我想给我的程序一个URL,让它在那个页面打开一个IE窗口。

起初我使用Process.Start()来打开IE窗口,它可以工作,但是不允许我访问WebBrowser.DocumentCompleted函数。我正在尝试使用WebBrowser实例创建IE窗口,但我无法显示IE窗口。

    using System;
    using System.Windows.Forms;

    namespace WebBrowserTest
    {
        public partial class Form1 : Form
        {
            WebBrowser IETestBrowser;
            public Form1()
            {
                InitializeComponent();
                IETestBrowser = new WebBrowser();
                IETestBrowser.AllowNavigation = true;
                IETestBrowser.Visible = true;
                IETestBrowser.DocumentCompleted += ietb_DocumentCompleted;
            }

            private void LoadPageBtn_Click(object sender, EventArgs e)
            {

                IETestBrowser.Navigate("http://www.google.com");
                IETestBrowser.Show();
                TextDescriptionLbl.Text = "Loading Page...";
            }

            private void ietb_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)
            {
                TextDescriptionLbl.Text = "Done!";
            }
        }
    }

此代码有效,并且正确触发了DocumentCompleted事件。我希望网页可以在IE窗口中显示。如何让WebBrowser在屏幕上绘图?

1 个答案:

答案 0 :(得分:1)

public Form1()
{
    InitializeComponent();
    IETestBrowser = new WebBrowser();
    IETestBrowser.AllowNavigation = true;
    IETestBrowser.Visible = true;
    IETestBrowser.DocumentCompleted += ietb_DocumentCompleted;

    //Add the WebBrowser Control to the form
    IETestBrowser.Left = 100;
    IETestBrowser.Top = 100;
    this.Controls.Add(IETestBrowser);
}