C# для профессионалов. Том II | страница 21
. При этом создается новый объект
>XPathNavigator
на основе узла, на который указывает >XPathNodeIterator
. В данном случае создается >XPathNavigator
для одного узла >book
(книги) в документе. >LoadBook
создает другой >XPathNodeIterator
, вызывая иной тип метода выбора — метод >SelectDescendants
. Это даст нам >XPathNodeIterator
всех узлов-потомков и потомков узлов-потомков узла >book
(книга), переданного в метод >LoadBook
. Мы делаем другой цикл >MoveNext()
на этом >XPathNodeIterator
и загружаем окно списка именами и значениями элементов.>XPathNavigator
содержит все методы для перемещения и выбора элементов, которые могут понадобиться. Приведем некоторые из методов перемещения:
Имя метода | Описание |
---|---|
MoveTo | Получает в качестве параметра >XPathNavigator . Делает текущей позицию, которая указана в >XPathNavigator . |
>MoveToAttribute | Перемещает к именованному атрибуту. Получает имя атрибута и пространство имен как параметры. |
>MoveToFirstAttribute | Перемещает к первому атрибуту текущего элемента. Возвращает >true , если выполняется успешно. |
>MoveToNextAttribute | Перемещает к следующему атрибуту текущего элемента. Возвращает >true , если выполняется успешно. |
>MoveToFirst | Перемещает к первому >sibling текущего узла. Возвращает >true , если выполняется успешно, в противном случае возвращает >false . |
>MoveToLast | Перемещает к последнему >sibling текущего узла. Возвращает >true , если выполняется успешно. |
>MoveToNext | Перемещает к следующему >sibling текущего узла. Возвращает >true , если выполняется успешно. |
>MoveToPrevious | Перемещает к предыдущему >sibling текущего узла. Возвращает >true , если выполняется успешно. |
>MoveToFirstChild | Перемещает к первому потомку текущего элемента. Возвращает >true , если выполняется успешно. |
>MoveToId | Перемещает к элементу с идентификатором ID, предоставленным в виде параметра. Должна существовать схема документа и данные элемента типа ID. |
>MoveToParent | Перемещает к предку текущего узла. Возвращает >true , если выполняется успешно. |
>MoveToRoot | Перемещает к корневому узлу документа. |
Существует также несколько методов >Select
выбора подмножества узлов для работы. Все методы >Select
возвращают объект >XPathNodeIterator
. >XPathNodeIterator
можно считать эквивалентом >NodeList
или >NodeSet
в >XPath
. Этот объект имеет три свойства и два метода:
□ >Clone
— создает новую копию себя
□ >Count
— число узлов в объекте >XPathNodeIterator
□ >Current
— возвращает >XPathNavigator
, указывающий на текущий узел
□ >CurrentPosition
— возвращает целое число, соответствующее текущей позиции
Книги, похожие на C# для профессионалов. Том II