Share via


TextPointer.CompareTo(TextPointer) Método

Definição

Executa uma comparação ordinal entre as posições especificadas pelo TextPointer atual e um segundo TextPointer especificado.

public:
 int CompareTo(System::Windows::Documents::TextPointer ^ position);
public int CompareTo (System.Windows.Documents.TextPointer position);
member this.CompareTo : System.Windows.Documents.TextPointer -> int
Public Function CompareTo (position As TextPointer) As Integer

Parâmetros

position
TextPointer

Um TextPointer que especifica uma posição para comparar à posição atual.

Retornos

Int32

-1 se o TextPointer atual preceder position, 0 se os locais forem iguais, +1 se o TextPointer atual seguir position.

Exceções

position especifica uma posição fora do contêiner de texto associado à posição atual.

Exemplos

O exemplo a seguir demonstra um uso para esse método. No exemplo, o CompareTo método é usado em conjunto com o GetInsertionPosition método para testar se um especificado TextElement está vazio.

// Tests to see if the specified TextElement is empty (has no printatble content).
bool IsElementEmpty(TextElement element)
{
    // Find starting and ending insertion positions in the element.
    // Inward-facing directions are used to make sure that insertion position
    // will be found correctly in case when the element may contain inline 
    // formatting elements (such as a Span or Run that contains Bold or Italic elements).
    TextPointer start = element.ContentStart.GetInsertionPosition(LogicalDirection.Forward);
    TextPointer end = element.ContentEnd.GetInsertionPosition(LogicalDirection.Backward);
     
    // The element has no printable content if its first and last insertion positions are equal.
    return start.CompareTo(end) == 0;
} // End IsEmptyElement method.
' Tests to see if the specified TextElement is empty (has no printatble content).
Private Function IsElementEmpty(ByVal element As TextElement) As Boolean
    ' Find starting and ending insertion positions in the element.
    ' Inward-facing directions are used to make sure that insertion position
    ' will be found correctly in case when the element may contain inline 
    ' formatting elements (such as a Span or Run that contains Bold or Italic elements).
    Dim start As TextPointer = element.ContentStart.GetInsertionPosition(LogicalDirection.Forward)
    Dim [end] As TextPointer = element.ContentEnd.GetInsertionPosition(LogicalDirection.Backward)

    ' The element has no printable content if its first and last insertion positions are equal.
    Return start.CompareTo([end]) = 0

End Function ' End IsEmptyElement method.

Comentários

Um valor de -1 indica que a posição especificada pela atual TextPointer precede a posição especificada por position. Um valor 0 indica que as posições indicadas são iguais. Um valor de +1 positivo indica que a posição especificada pela corrente TextPointer segue a posição especificada por position.

Aplica-se a

Confira também