6

WebBrowser控件中,如何删除HtmlElement对象?类中没有方法HtmlElement可以完成此操作。作为一种解决方法,我可以创建一个“虚拟” HtmlElement(不将其插入HtmlDocument),然后将要删除AppendChild的对象插入(通过)其中。HtmlElement这感觉就像一个黑客。有一个更好的方法吗?

PS我想保留HtmlElement内存以供以后使用,而不是简单地销毁它(这就是将其父级设置innerHtml为空字符串的作用)

4

5 回答 5

4

看看这个 WebControl 继承,有很多功能: http: //www.codeproject.com/KB/miscctrl/csEXWB.aspx

您可以通过 id 向 del 元素添加删除方法。

希望这可以帮助

于 2009-03-12T05:06:36.737 回答
3

您可以通过将其 outerhtml 设置为空字符串来删除该元素。

elem.OuterHtml = ""

我希望这就是你要找的。

通用汽车

于 2009-03-11T15:56:01.690 回答
3

添加对 Microsoft.mshtml 的引用(来自 .Net 选项卡)

using Microsoft.mshtml;
....
{
...
    // To Remove     
    HTMLDocumentClass htmldoc = wbCtrl.Document.DomDocument as HTMLDocumentClass;
    IHTMLDOMNode node = htmldoc.getElementById("xBar") as IHTMLDOMNode;
    node.parentNode.removeChild(node);
...
}
于 2009-08-02T13:10:37.467 回答
2

我知道的唯一其他方法是更改​​父母的InnerHtml.

于 2009-02-16T19:41:40.513 回答
1

有一种称为IHTMLDOMNode::removeNode“官方”方法的方法,但这是mshtml.dll. 我正在寻找更适合 C# 的东西。

于 2009-02-16T19:47:38.767 回答