Как добавить дочерний узел в расширение BHO Internet Explorer? - PullRequest
1 голос
/ 18 июля 2011

Я портирую расширение Firefox и просто пытаюсь добавить кнопку к узлу на веб-странице. Однако на странице ничего не происходит. Я считаю, что это связано с преобразованием между HTMLDOMNode и HTMLElement. Я даже не получаю никаких ошибок внутри консоли, используя IE dev add.

Мой код:

public void OnDocumentComplete(object pDisp, ref object URL)
    {
        HTMLDocument document = (HTMLDocument)webBrowser.Document;
        var fblike = document.getElementById("LikePluginPagelet");

        var button = document.createElement("input");
        button.setAttribute("value", "myButton");
        button.setAttribute("onClick", "doSomething()");
        ((IHTMLDOMNode)fblike).appendChild((IHTMLDOMNode)button);
    }

1 Ответ

2 голосов
/ 12 июля 2012

Вам нужно сделать fblike динамическим.

public void OnDocumentComplete(object pDisp, ref object URL)
{
    HTMLDocument document = (HTMLDocument)webBrowser.Document;
    var fblike = document.getElementById("LikePluginPagelet");

    var button = document.createElement("input");
    button.setAttribute("value", "myButton");
    button.setAttribute("onClick", "doSomething()");

    dynamic fbLike = fblike
    fbLike.appendChild((IHTMLDOMNode)button);
}
...