TextPointer.GetNextInsertionPosition(LogicalDirection) Metodo

Definizione

Restituisce un oggetto TextPointer nella posizione di inserimento successiva nella direzione logica specificata.

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

Parametri

direction
LogicalDirection

Uno dei valori LogicalDirection che specifica la direzione logica nella quale cercare la posizione di inserimento successiva.

Restituisce

Oggetto TextPointer che identifica la posizione di inserimento successiva nella direzione richiesta, oppure null se risulta impossibile trovare una posizione di inserimento.

Esempio

Nell'esempio seguente viene illustrato un utilizzo per questo metodo. Nell'esempio viene utilizzato il GetNextInsertionPosition metodo per attraversare i limiti degli elementi di contenuto per contare il numero di Paragraph elementi presenti tra due istanze specificate 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.

Commenti

Una posizione di inserimento è una posizione in cui è possibile aggiungere nuovo contenuto senza interrompere regole semantiche per il contenuto associato. In pratica, una posizione di inserimento si trova in qualsiasi punto del contenuto in cui è possibile posizionare un cursore. Un esempio di posizione valida TextPointer che non è una posizione di inserimento è la posizione tra due tag adiacenti Paragraph , ovvero tra il tag di chiusura del paragrafo precedente e il tag di apertura del paragrafo successivo.

Si applica a

Vedi anche