This is VS2010 and .NET 4.0. I'm trying to compare two System.Drawing.Color
objects.
The value of mStartColor.ToArgb()
is 16777215
.
The value of Color.Transparent.ToArgb()
is 16777215
.
The value of mStartColor <> Color.Transparent
is True
.
How is equality implemented for Color
objects?
Thanks everyone. I got my answer, though it doesn't make much sense to me (see my comments to Tim's and Dave's answers below). I'll mark Tim's post as the answer and he was the first to reply, but Dave's answer is equally informative.
Always read the documentation first:
"To compare colors based solely on their ARGB values, you should use the ToArgb method. This is because the Equals and Equality members determine equivalency using more than just the ARGB value of the colors. For example, Black and FromArgb(0,0,0) are not considered equal, since Black is a named color and FromArgb(0,0,0) is not"