Awesomium "LoadingFrameComplete" 发射次数过多

Awesomium "LoadingFrameComplete" is firing too many times

最近才开始修补 Awesomium,它非常酷,而且比用于 WinForms 的普通 webBrowser 要好得多。

但是,当我使用 _LoadingFrameComplete 方法确定页面是否已加载时,它似乎触发了 10 次以上(在 Facebook 上使用时,导航到 google.com 时触发了 2 次)

我正在尝试获取 webBrowser1_DocumentCompleted 的类似方法(在文档完成后仅触发一次)。

这是'me'的问题,还是我检查网站是否完全加载完成的方法不对。

我使用的是 Visual C# 2010 版

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

        private void button1_Click(object sender, EventArgs e)
        {

            string searchURL = textBox1.Text;
            webControl1.Source = new Uri(searchURL);


        }

        private void Awesomium_Windows_Forms_WebControl_LoadingFrameComplete(object sender, Awesomium.Core.FrameEventArgs e)
        {
            richTextBox1.AppendText("Completed.\n");
        }




    }
}

尝试将 if(e.IsMainFrame) { .... } 放入您的 LoadingFrameComplete 事件处理程序中,并且只将您的代码放在那里。 – 乔恩

这就是答案。谢谢。

您需要使用 IsMainFrame

private void Awesomium_Windows_Forms_WebControl_LoadingFrameComplete(object sender, Awesomium.Core.FrameEventArgs e)
{
    if (e.IsMainFrame)
    {
        richTextBox1.AppendText("Completed.\n");
    }
}