TextPointer.GetNextInsertionPosition(LogicalDirection) Méthode

Définition

Renvoie un TextPointer à la prochaine position d'insertion dans la direction logique spécifiée.

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

Paramètres

direction
LogicalDirection

L'une des valeurs LogicalDirection qui spécifient la direction logique dans laquelle rechercher la prochaine position d'insertion.

Retours

TextPointer

Un TextPointer qui identifie la prochaine position d'insertion dans la direction requise, ou null si aucune n'est décelable.

Exemples

L’exemple suivant illustre une utilisation pour cette méthode. L’exemple utilise la GetNextInsertionPosition méthode pour parcourir les limites des éléments de contenu afin de compter le nombre d’éléments Paragraph présents entre deux instances spécifiées 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.

Remarques

Une position d’insertion est une position où le nouveau contenu peut être ajouté sans interrompre les règles sémantiques du contenu associé. Dans la pratique, une position d’insertion est n’importe où dans le contenu où un caret peut être positionné. Un exemple de position valide TextPointer qui n’est pas une position d’insertion est la position entre deux balises adjacentes Paragraph (autrement dit, entre la balise fermante du paragraphe précédent et la balise d’ouverture du paragraphe suivant).

S’applique à

Voir aussi