2012-05-13 23 views
0

私はWebBrowserコントロールを介して特定のページをロードしようとしていますが、 'tb'というDIV要素にロードする不要な広告バナーは避けています。HTML要素をIDでスキップしながらWebBrowserコントロールにページをロードしますか?

どうすればいいですか?私はいくつかのグーグルを行って、mshtmlのリファレンスを使用している例が見つかりましたが、この例では動作させることはできません:https://stackoverflow.com/a/1218875

アイデア?

なぜこれは機能しませんか?

using System; 
using mshtml; 
using System.Windows.Forms; 

namespace Client 
{ 
    public partial class Client : Form 
    { 
     public Client() 
     { 
      InitializeComponent(); 

      HTMLDocumentClass htmldoc = wbBrowser.Document.DomDocument as HTMLDocumentClass; 
      IHTMLDOMNode node = htmldoc.getElementById("tb") as IHTMLDOMNode; 
      node.parentNode.removeChild(node); 
     } 
    } 
} 

私はエラーを取得する:

'mshtml.HTMLDocumentClass' does not contain a definition for 'getElementById' and no extension method 'getElementById' accepting a first argument of type 'mshtml.HTMLDocumentClass' could be found (are you missing a using directive or an assembly reference?)

そして:

Interop type 'mshtml.HTMLDocumentClass' cannot be embedded. Use the applicable interface instead.

答えて

0

あなたが使用してこれを行うことができます。

IHTMLDocument3 htmldoc = wbCtrl.Document.DomDocument as IHTMLDocument3; 
IHTMLDOMNode node = htmldoc.getElementById("xBar") as IHTMLDOMNode; 
node.parentNode.removeChild(node); 
関連する問題