Compartilhar via


Rect.Equality(Rect, Rect) Operador

Definição

Compara a igualdade exata de dois retângulos.

public:
 static bool operator ==(System::Windows::Rect rect1, System::Windows::Rect rect2);
public static bool operator == (System.Windows.Rect rect1, System.Windows.Rect rect2);
static member ( = ) : System.Windows.Rect * System.Windows.Rect -> bool
Public Shared Operator == (rect1 As Rect, rect2 As Rect) As Boolean

Parâmetros

rect1
Rect

O primeiro retângulo para comparar.

rect2
Rect

O segundo retângulo a ser comparado.

Retornos

true se os retângulos tiverem os mesmos valores Location e Size; caso contrário, false.

Exemplos

O exemplo a seguir mostra como usar o Equality operador para determinar se dois retângulos são exatamente iguais.

private Boolean overloadedEqualityOperatorExample()
{
    // Initialize new rectangle.
    Rect myRectangle = new Rect();

    // The Location property specifies the coordinates of the upper left-hand 
    // corner of the rectangle. 
    myRectangle.Location = new Point(10, 5);

    // Set the Size property of the rectangle with a width of 200
    // and a height of 50.
    myRectangle.Size = new Size(200, 50);

    // Create second rectangle to compare to the first.
    Rect myRectangle2 = new Rect();
    myRectangle2.Location = new Point(0, 0);
    myRectangle2.Size = new Size(200, 50);

    // Check if the two Rects are exactly equal using the overloaded equality operator.
    // areEqual is false because although the size of each rectangle is the same,
    // the locations are different.
    bool areEqual = (myRectangle == myRectangle2);

    // Returns false.
    return areEqual;
}
Private Function overloadedEqualityOperatorExample() As Boolean
    ' Initialize new rectangle.
    Dim myRectangle As New Rect()

    ' The Location property specifies the coordinates of the upper left-hand 
    ' corner of the rectangle. 
    myRectangle.Location = New Point(10, 5)

    ' Set the Size property of the rectangle with a width of 200
    ' and a height of 50.
    myRectangle.Size = New Size(200, 50)

    ' Create second rectangle to compare to the first.
    Dim myRectangle2 As New Rect()
    myRectangle2.Location = New Point(0, 0)
    myRectangle2.Size = New Size(200, 50)

    ' Check if the two Rects are exactly equal using the overloaded equality operator.
    ' areEqual is false because although the size of each rectangle is the same,
    ' the locations are different.
    Dim areEqual As Boolean = (myRectangle = myRectangle2)

    ' Returns false.
    Return areEqual

End Function

Comentários

Esta operação testa a igualdade de objetos.

Nessa comparação, duas instâncias de Double.NaN são consideradas iguais.

Observação

A posição e as dimensões de um retângulo são descritas por Double valores. Como Double os valores podem perder precisão quando operados, uma comparação entre dois valores logicamente iguais pode falhar.

O método equivalente para esse operador é Rect.Equals(Rect, Rect)

Aplica-se a