Vergleichen Sie zwei Color-Objekte
Dies ist VS2010 und .NET 4.0. Ich bin versucht zu vergleichen, zwei System.Drawing.Color
Objekte.
Den Wert mStartColor.ToArgb()
ist 16777215
.
Den Wert Color.Transparent.ToArgb()
ist 16777215
.
Den Wert mStartColor <> Color.Transparent
ist True
.
Wie ist Gleichstellung realisiert Color
Objekte?
BEARBEITEN
Danke an alle. Ich habe meine Antwort, aber es macht nicht viel Sinn für mich (siehe meine Kommentare zu Tim 's und Dave' s Antworten unten). Ich werde mark Tim 's post als Antwort, und er war der erste, um zu Antworten, aber Dave' s Antwort ist ebenso informativ.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Lesen Sie immer die Dokumentation erste:
Color.Equals
oder Farbe-==
wird Sie überall verwendet. Also auch, wenn eine Farbe wie andere, es ist nicht das gleiche, wenn es nicht zum Beispiel den gleichen Namen oder die gleicheKnownColor
.Farbe Strukturen mehr in Ihnen enthaltenen Daten, als nur die tatsächliche Farbe, die Informationen, wie
Farbe.FromArgb(16777215)
Gleich Vergleiche benutzen all diese, um zu bestimmen, Gleichheit. sollten Sie diong, was Sie bereits vorgeschlagen haben, und verwenden Sie:
Könnten Sie schreiben eine extension-Methode, die würde vergleichen Sie die ARGB-Wert von zwei Farb-Objekte und gibt true zurück, wenn beide identisch sind.
Hier ist die MSDN-Dokumentation auf Erweiterung Methoden.