# Color.EqualsColor.EqualsColor.EqualsColor.Equals Method

## Definition

Tests whether two Color structures are identical.

 Equals(Object) Equals(Object) Equals(Object) Equals(Object) Tests whether the specified object is a Color structure and is equivalent to this color. Equals(Color) Equals(Color) Equals(Color) Tests whether the specified Color structure is identical to this color. Equals(Color, Color) Equals(Color, Color) Equals(Color, Color) Equals(Color, Color) Tests whether two Color structures are identical.

## Equals(Object)Equals(Object)Equals(Object)Equals(Object)

Tests whether the specified object is a Color structure and is equivalent to this color.

``````public:
override bool Equals(System::Object ^ o);``````
``public override bool Equals (object o);``
``override this.Equals : obj -> bool``
``Public Overrides Function Equals (o As Object) As Boolean``

#### Parameters

o
Object Object Object Object

The object to compare to this Color structure.

#### Returns

`true` if the specified object is a Color structure and is identical to the current Color structure; otherwise, `false`.

### Remarks

Floating-point values can acquire a small degree of error when they are operated upon. The Equals method, the Equality operator, and the Inequality operator do not compensate for this and thus may not return the expected Boolean result.

The AreClose method uses a fuzzy equality algorithm that compensates for this floating-point arithmetic error by returning `true` for a comparison of two Color structures that are practically identical, but whose values may differ by a minuscule amount.

## Equals(Color)Equals(Color)Equals(Color)

Tests whether the specified Color structure is identical to this color.

``````public:
virtual bool Equals(System::Windows::Media::Color color);``````
``public bool Equals (System.Windows.Media.Color color);``
``override this.Equals : System.Windows.Media.Color -> bool``

#### Parameters

color
Color Color Color Color

The Color structure to compare to the current Color structure.

#### Returns

`true` if the specified Color structure is identical to the current Color structure; otherwise, `false`.

## Equals(Color, Color)Equals(Color, Color)Equals(Color, Color)Equals(Color, Color)

Tests whether two Color structures are identical.

``````public:
static bool Equals(System::Windows::Media::Color color1, System::Windows::Media::Color color2);``````
``public static bool Equals (System.Windows.Media.Color color1, System.Windows.Media.Color color2);``
``static member Equals : System.Windows.Media.Color * System.Windows.Media.Color -> bool``
``Public Shared Function Equals (color1 As Color, color2 As Color) As Boolean``

#### Parameters

color1
Color Color Color Color

The first Color structure to compare.

color2
Color Color Color Color

The second Color structure to compare.

#### Returns

`true` if `color1` and `color2` are exactly identical; otherwise, `false`.

### Remarks

Floating-point values can acquire a small degree of error when they are operated upon. The Equals method, the Equality operator, and the Inequality operator do not compensate for this and thus may not return the expected Boolean result.

The AreClose method uses a fuzzy equality algorithm that compensates for this floating-point arithmetic error by returning `true` for a comparison of two Color structures that are practically identical, but whose values may differ by a minuscule amount.