C# Webbrowser控件 - 定义文档加载完成

3

DocumentCompleted将在所有dom元素加载完成后(包括图片、flash等)起作用。我正在等待所有dom元素下载完毕,才能处理此文档。如何定义文档(页面)何时加载(客户端看到页面时)?是否有任何事件可以定义文档何时加载到客户端?

1个回答

1

为什么不让页面触发一个事件呢?例如,像这样:

using System.Runtime.InteropServices;
using System.Windows.Forms;

namespace TestWebBrowser
{
    [ComVisible(true)]
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void button1_Click(object sender, System.EventArgs e)
        {
              webBrowser1.ObjectForScripting = this;
              webBrowser1.DocumentText = @"
                    <html>
                    <body onLoad='jscript:window.external.DocumentLoaded();'>
<img src=""http://www.nasa.gov/images/content/464377main_image_1695_1600-1200.jpg"" />
</body>
</html>";
        }

        public void DocumentLoaded()
        {
            MessageBox.Show("Document Finished Loading.");
        }
    }
}

在上面的示例中,页面使用 onLoad() 事件来通知表单页面已经加载完成。
希望这可以帮到你。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接