6

コントロールで、オブジェクトWebBrowserを削除するにはどうすればよいですか?これを実現するためのメソッドはクラスにHtmlElementありません。HtmlElement回避策として、「ダミー」HtmlElementを(に挿入せずにHtmlDocument)作成し、そこに(を介してAppendChild)削除するHtmlElementオブジェクトを挿入することができます。これはハックのように感じます。これを行うためのより良い方法はありますか?

HtmlElementPS単に破棄するのではなく、後で使用するためにメモリに保持したい(これは、親innerHtmlを空の文字列に設定するとどうなるか)

4

5 に答える 5

4

たくさんの機能を備えたこの WebControl Heritance を見てください: http://www.codeproject.com/KB/miscctrl/csEXWB.aspx

id によって del 要素に remove メソッドを追加できます。

お役に立てれば

于 2009-03-12T05:06:36.737 に答える
3

そのouterhtmlを空の文字列に設定することにより、要素を削除できます。

elem.OuterHtml = ""

これがあなたが探していたものであることを願っています。

gm

于 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 に答える