TextPointer.GetNextInsertionPosition(LogicalDirection) Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
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
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).