TextPointer.GetNextInsertionPosition(LogicalDirection) Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
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 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).