ITreeWalker

ITreeWalker interface

Los objetos TreeWalker se utilizan para navegar por un árbol de documentos o un subárbol utilizando la vista del documento definida por sus indicadores y filtros whatToShow (si los hay). Cualquier función que realice la navegación usando un TreeWalker automáticamente admitirá cualquier vista definida por un TreeWalker.

Omitir nodos de la vista lógica de un subárbol puede dar como resultado una estructura que es sustancialmente diferente del mismo subárbol en el documento completo, sin filtrar. Los nodos que son hermanos en la vista TreeWalker pueden ser hijos de nodos diferentes y muy separados en la vista original. Por ejemplo, considere un NodeFilter que salta todos los nodos excepto los nodos de texto y el nodo raíz de un documento. En la vista lógica resultante, todos los nodos de texto serán hermanos y aparecerán como hijos directos del nodo raíz, sin importar cuán profundamente anidada esté la estructura del documento original.

Véase también elModelo de objeto de documento (DOM) Nivel 2 Traversal and Range Specification. @desde DOM Nivel 2

public interface ITreeWalker : ITraversal

Propiedades

NombreDescripción
CurrentNode { get; set; }El nodo en el que TreeWalker está posicionado actualmente. Las alteraciones en el árbol DOM pueden hacer que el nodo actual ya no sea aceptado por el filtro asociado de TreeWalker. currentNode también se puede establecer explícitamente en cualquier nodo, ya sea dentro del subárbol especificado por el nodo raíz o sería aceptado por las banderas filter y whatToShow. Se produce un recorrido adicional relativo a currentNode incluso si no es parte de la vista actual, aplicando los filtros en la dirección solicitada; si no es posible atravesar , el nodo actual no cambia.

Métodos

NombreDescripción
FirstChild()Mueve el TreeWalker al primer elemento secundario visible del nodo actual y devuelve el nuevo nodo. Si el nodo actual no tiene elementos secundarios visibles , devuelve un valor nulo y retiene el nodo actual.
LastChild()Mueve el TreeWalker al último elemento secundario visible del nodo actual y devuelve el nuevo nodo. Si el nodo actual no tiene elementos secundarios visibles , devuelve un valor nulo y retiene el nodo actual.
NextNode()Mueve el TreeWalker al siguiente nodo visible en el orden document relativo al nodo actual y devuelve el nuevo nodo. Si el nodo actual no tiene un nodo siguiente, o si la búsqueda de nextNode intenta subir desde el nodo raíz del TreeWalker, devuelve un valor nulo y retiene el nodo actual.
NextSibling()Mueve el TreeWalker al siguiente hermano del nodo actual y devuelve el nuevo nodo. Si el nodo actual no tiene el siguiente hermano visible , devuelve nulo y retiene el nodo actual.
ParentNode()Se desplaza y devuelve el nodo antecesor visible más cercano del nodo actual . Si la búsqueda de parentNode intenta subir hacia arriba desde el nodo raíz del TreeWalker, o si no logra encontrar un nodo antepasado visible, este método conserva la posición actual y devuelve nulo.
PreviousNode()Mueve el TreeWalker al nodo visible anterior en el orden del documento relativo al nodo actual y devuelve el nodo new . Si el nodo actual no tiene un nodo anterior, o si la búsqueda de anteriorNodo intenta ascender desde el nodo raíz del TreeWalker , devuelve nulo y retiene el nodo actual.
PreviousSibling()Mueve el TreeWalker al hermano anterior del nodo actual y devuelve el nuevo nodo. Si el nodo actual no tiene un hermano anterior visible , devuelve nulo y retiene el nodo actual .

Ver también