Gecko web浏览器c#编码

时间:2016-05-14 06:16:14

标签: c# gecko geckofx

我刚刚了解了gecko并在我的应用程序中使用它。我无法使用以前的功能,如

element.count;
element.Innerhtml;
 document.Readystate;

以及许多其他功能。

gecko浏览器有替代功能吗? 我搜索了计数方法,我找到了   geckoelemnt.Count<>; 但这并不是因为它需要一个论证。任何有用的链接都会有所帮助。 提前谢谢。

1 个答案:

答案 0 :(得分:2)

首先,您必须初始化浏览器,然后听一些事件。最重要的是DocumentComplete(documentReady)。它可以让您导航DOMtree

if(!Xpcom.IsInitialized) Xpcom.Initialize("Firefox");
_GeckoWebBrowser _brs = new GeckoWebBrowser() { Dock = DockStyle.Fill };
_brs.Navigate("mypage.html");
_brs.AddMessageEventListener("myFunction", recived);
_brs.DomClick += _brs_DomClick;
_brs.DocumentCompleted += _brs_DocumentCompleted;

捕获事件:

void _brs_DocumentCompleted(object sender, Gecko.Events.GeckoDocumentCompletedEventArgs e)
{
    var ele = _brs.Document.GetElementsByClassName("myCssClass");
    //All found elements
    foreach (GeckoHtmlElement elem in ele)
    {
        elem.InnerHtml = "My value";
        elem.InsertAdjacentHTML("beforeend",MyDomString);
        //and many other functions

    }

}

void _brs_DomClick(object sender, DomMouseEventArgs e)
{
    //Capture dom click.
}
void recived(string s)
{
    //myfunction from javascript
}