2010-08-11 7 views
0

J'essaie de manipuler un document demandé dans le contrôle WPBr WebBrowser. Je l'ai déjà réussi à invoquer JavaScript sur un document chargé, mais je ne suis pas en mesure de modifier le code HTML affiché dans le contrôle lui-même.Utilisation de HTMLDocument pour manipuler HTML et l'afficher dans WebBrowser-control

Mon (très simplifié) code dans le OnNavigating-Handler ressemble à ceci:

mshtml.HTMLDocument doc = (mshtml.HTMLDocument)View.browser.Document; 
HTMLTableClass table = doc.getElementById("someTable") as HTMLTableClass; 

if (table != null) 
{  
    table.appendChild((IHTMLDOMNode)(doc.createElement("<tr>") as IHTMLElement)); 
} 
doc.close(); 

Le -Element ne sont pas en annexe au document affiché dans le contrôle. Tous les indices sont très appréciés!

Répondre

3

J'ai enfin compris. Il est seulement possible de changer le contenu de la table en ajoutant des lignes et des cellules que je voulais éviter en premier lieu. Mon approche consistait à changer directement le contenu du tag, ce qui ne fonctionnait pas.

mshtml.IHTMLTableRow row = table.IHTMLTable_insertRow(-1) as mshtml.IHTMLTableRow; 
mshtml.IHTMLElement c = (mshtml.IHTMLElement)row.insertCell(0); 
c.innerText = "some"; 
mshtml.IHTMLElement c1 = (mshtml.IHTMLElement)row.insertCell(1); 
c1.innerText = "text"; 
+1

Qu'est-ce que mshtml d'où vient-il? – Luke101