TextPointer.CompareTo(TextPointer) Метод

Определение

Выполнение порядкового сравнения между положениями, указанными текущим TextPointer и вторым указанным TextPointer.Performs an ordinal comparison between the positions specified by the current TextPointer and a second specified TextPointer.

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

Параметры

position
TextPointer

TextPointer, который указывает положение для сравнения с текущим положением.A TextPointer that specifies a position to compare to the current position.

Возвраты

-1 если текущий TextPointer предшествует position; 0 если расположения те же; +1 если текущий TextPointer следует за position.-1 if the current TextPointer precedes position; 0 if the locations are the same; +1 if the current TextPointer follows position.

Исключения

position указывает положение за пределами текстового контейнера, связанного с текущим положением.position specifies a position outside of the text container associated with the current position.

Примеры

В следующем примере демонстрируется использование этого метода.The following example demonstrates a use for this method. В этом примере CompareTo метод используется в сочетании GetInsertionPosition с методом для проверки того, является ли указанный TextElement объект пустым.In the example, the CompareTo method is used in conjunction with the GetInsertionPosition method to test whether a specified TextElement is empty.

// 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.

Комментарии

Значение-1 указывает, что заданная в текущем TextPointer положении координата предшествует положению, заданному параметром. positionA value of -1 indicates that the position specified by the current TextPointer precedes the position specified by position. Значение 0 указывает, что указанные позиции равны.A value of 0 indicates that the indicated positions are equal. Положительное значение + 1 указывает на то, что текущая TextPointer координата соответствует положению, positionзаданному в параметре.A value of positive +1 indicates that the position specified by the current TextPointer follows the position specified by position.

Применяется к

Дополнительно