TextPointer.GetNextInsertionPosition(LogicalDirection) Método

Definición

Devuelve TextPointer a la posición de inserción siguiente en la dirección lógica especificada.

public:
 System::Windows::Documents::TextPointer ^ GetNextInsertionPosition(System::Windows::Documents::LogicalDirection direction);
public System.Windows.Documents.TextPointer GetNextInsertionPosition (System.Windows.Documents.LogicalDirection direction);
member this.GetNextInsertionPosition : System.Windows.Documents.LogicalDirection -> System.Windows.Documents.TextPointer
Public Function GetNextInsertionPosition (direction As LogicalDirection) As TextPointer

Parámetros

direction
LogicalDirection

Uno de los valores de LogicalDirection que especifica la dirección lógica en la que buscar la posición de inserción siguiente.

Devoluciones

TextPointer

TextPointer que identifica la posición de inserción siguiente en la dirección solicitada o null si no se puede buscar ninguna posición de inserción siguiente.

Ejemplos

En el ejemplo siguiente se muestra un uso para este método. En el ejemplo se usa el GetNextInsertionPosition método para recorrer los límites del elemento de contenido con el fin de contar el número de Paragraph elementos presentes entre dos instancias especificadas TextPointer .

// This method returns the number of pagragraphs between two
// specified TextPointers.
int GetParagraphCount(TextPointer start, TextPointer end)
{
    int paragraphCount = 0;
 
    while (start != null && start.CompareTo(end) < 0)
    {
        Paragraph paragraph = start.Paragraph;
 
        if (paragraph != null)
        {
            paragraphCount++;
 
            // Advance start to the end of the current paragraph.
            start = paragraph.ContentEnd;
         }
 
         // Use the GetNextInsertionPosition method to skip over any interceding
         // content element tags.
         start = start.GetNextInsertionPosition(LogicalDirection.Forward);
     } // End while.
 
         return paragraphCount;
}  // End GetParagraphCount.
' This method returns the number of pagragraphs between two
' specified TextPointers.
Private Function GetParagraphCount(ByVal start As TextPointer, ByVal [end] As TextPointer) As Integer
    Dim paragraphCount As Integer = 0

    Do While start IsNot Nothing AndAlso start.CompareTo([end]) < 0
        Dim paragraph As Paragraph = start.Paragraph

        If paragraph IsNot Nothing Then
            paragraphCount += 1

            ' Advance start to the end of the current paragraph.
            start = paragraph.ContentEnd
        End If

        ' Use the GetNextInsertionPosition method to skip over any interceding
        ' content element tags.
        start = start.GetNextInsertionPosition(LogicalDirection.Forward)

    Loop ' End while.

    Return paragraphCount

End Function ' End GetParagraphCount.

Comentarios

Una posición de inserción es una posición en la que se puede agregar contenido nuevo sin interrumpir ninguna regla semántica para el contenido asociado. En la práctica, una posición de inserción se encuentra en cualquier lugar del contenido donde se puede colocar un símbolo de intercalación. Un ejemplo de una posición válida TextPointer que no es una posición de inserción es la posición entre dos etiquetas adyacentes Paragraph (es decir, entre la etiqueta de cierre del párrafo anterior y la etiqueta de apertura del párrafo siguiente).

Se aplica a

Consulte también