# Rect.Equality(Rect, Rect)Rect.Equality(Rect, Rect)Rect.Equality(Rect, Rect)Rect.Equality(Rect, Rect) Operator

## Определение

Проверяет точное равенство двух прямоугольников.Compares two rectangles for exact equality.

``````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``

#### Параметры

rect1
Rect Rect Rect Rect

Первый прямоугольник для сравнения.The first rectangle to compare.

rect2
Rect Rect Rect Rect

Второй прямоугольник для сравнения.The second rectangle to compare.

#### Возвраты

`true`, если прямоугольники имеют одинаковые значения свойств Location и Size; в противном случае — `false`.`true` if the rectangles have the same Location and Size values; otherwise, `false`.

## Примеры

В следующем примере показано, как использовать Equality оператор, чтобы определить, равны ли двух прямоугольников.The following example shows how to use the Equality operator to determine if two rectangles are exactly equal.

``````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
``````

## Комментарии

Эта операция проверяет равенство объекта.This operation tests for object equality.

В этом сравнении двух экземпляров Double.NaN считаются равными.In this comparison, two instances of Double.NaN are considered equal.

Примечание

Положение и размеры прямоугольника описываемым Double значения.A rectangle's position and dimensions are described by Double values. Так как Double значения могут терять точность во время обработки, сравнение двух значений, которые логически равны может завершиться ошибкой.Because Double values can lose precision when operated upon, a comparison between two values that are logically equal might fail.

Имеет эквивалентный метод для этого оператора Rect.Equals(Rect, Rect)The equivalent method for this operator is Rect.Equals(Rect, Rect)