Dado que necesitamos usar C# para procesar operaciones relacionadas en I Recientemente, hemos acumulado algún código. El siguiente código es un ejemplo de generación de un TreeView de DOM desde el código HTML:
// El proceso se llamará recursivamente
// DOM_NODE es el nodo DOM HTML actual
// tree_node es el nodo del árbol insertado actualmente
privado void insertDomnodes (ihtmldomnode parentnode, treeNode tree_node)
{
int sibing = 0; // El orden de los nodos actuales entre los nodos hermanos está separado por ",", ",", ",", ",".
if (parentNode.haschildNodes ())
{
// nivel ++;
// PathString = PathString + "," + nivel;
ihtmldomchildrencollection allChild = (ihtmldomchildrencollection) parentNode.childNodes;
int longitud = allChild.length;
para (int i = 0; i <longitud; i ++)
{
String Instring = PathString;
Instring = Instring+","+Sibing ++;
ihtmldomnode child_node = (ihtmldomnode) allChild.Item (i);
treeNode tempnode = tree_node.nodes.add (child_node.nodeName +"_" +instrucción);
// string tmp =
insertDomNodes (child_node, tempnode);
PathString = Instring;
}
}
}
Private void evipsbrowser_documentComplete (remitente de objeto, axshdocvw.dwebbrowserevents2_documentcompleteevent E)
{
PathString = "0";
nivel = 0;
domtreeview.nodes.clear ();
ihtmlDocument3 htmlDocument = (ihtmlDocument3) evipsbrowser.document;
ihtmldomnode rootdomNode = (ihtmldomnode) htmlDocument.documentElement;
treeNode root = domtreeview.nodes.add ("html"+"_"+pathString);
insertDomnodes (rootdomnode, raíz);
}