Navegación con Cursor
Mientras trabaja con un documento, incluso si es corto o largo, deberá navegar por él. La navegación con un cursor virtual representa la capacidad de navegar entre diferentes nodos de un documento.
Dentro de un documento corto, moverse en un documento es simple ya que puede mover el punto de inserción incluso usando las teclas de flecha del teclado o haciendo clic con el mouse para ubicar el punto de inserción donde desee. Pero una vez que tengas un documento grande con muchas páginas, estas técnicas básicas serán insuficientes.
Este artículo explica cómo moverse por un documento y navegar con un cursor virtual a diferentes partes del mismo.
Detección de la posición actual del cursor
Antes de comenzar el proceso de navegación por su documento, necesitará obtener el nodo que está seleccionado actualmente. Puede obtener la posición exacta del cursor en un nodo seleccionado utilizando la propiedad CurrentNode. Además, en lugar de obtener el nodo actual, puede obtener el párrafo o la sección actualmente seleccionados utilizando las propiedades CurrentParagraph y CurrentSection.
Cualquier operación de inserción que realice utilizando DocumentBuilder se insertará antes del CurrentNode. Cuando el párrafo actual está vacío o el cursor se coloca justo antes del final del párrafo, el CurrentNode devuelve nulo.
Métodos de navegación en un documento
Cuando edita texto, es importante saber cómo navegar por su documento y dónde moverse exactamente en él. Aspose.Words le permite moverse por un documento y navegar a sus diferentes secciones y partes; esto es similar a la funcionalidad del Panel de navegación en Microsoft Word para ir a una página o encabezado en un documento de Word sin desplazarse.
El método principal es poder mover la posición del cursor a un nodo específico en su documento, puede lograrlo utilizando el método MoveTo.
El siguiente ejemplo de código muestra cómo mover el DocumentBuilder a diferentes nodos en un documento:
Pero además del método MoveTo básico, existen otros más específicos.
Navegar al principio o al final de un documento
Puede ir al principio o al final de su documento utilizando los métodos MoveToDocumentStart y MoveToDocumentEnd.
El siguiente ejemplo de código muestra cómo mover la posición del cursor al principio o al final de un documento:
Navegar con marcadores
Puede marcar un lugar que desee encontrar y volver a él fácilmente. Puede insertar tantos marcadores en su documento como desee y luego navegar a través de ellos identificándolos con nombres únicos. Puede pasar a un marcador utilizando el método MoveToBookmark.
Los siguientes ejemplos de código muestran cómo mover la posición del cursor a un marcador:
Navegar a celdas de tabla
Puede pasar a una celda de la tabla utilizando el método MoveToCell. Este método le permitirá navegar con el cursor a cualquier celda de una tabla específica. Además, puede especificar un índice para mover el cursor a cualquier posición o carácter especificado en una celda dentro del método MoveToCell.
El siguiente ejemplo de código muestra cómo mover la posición del cursor a una celda de tabla especificada:
Navegar a un campo
Puede pasar a un campo específico en su documento utilizando el método MoveToField. Además, puede pasar a un campo de combinación específico utilizando el método MoveToMergeField.
El siguiente ejemplo de código muestra cómo mover el cursor del generador de documentos a un campo específico:
Navegar a un encabezado o pie de página
Puede pasar al principio de un encabezado o pie de página utilizando el método MoveToHeaderFooter.
El siguiente ejemplo de código muestra cómo mover el cursor del generador de documentos al encabezado o pie de página de un documento:
Navegar a una sección o párrafo
Puede pasar a una sección o párrafo específico utilizando los métodos MoveToParagraph o MoveToSection. Además, puede especificar un índice para mover el cursor a cualquier posición o a un carácter específico en un párrafo dentro del método MoveToParagraph.
El siguiente ejemplo de código muestra cómo pasar a una sección específica y a un párrafo específico en un documento: