[英]What value does System.Drawing.Color -state have?
System.Drawing.Color具有一個私有字段int state
,這使相等性比從結構中所期望的更加棘手。
有人知道這是干什么的嗎? 誰,為什么以及為什么設置和閱讀它?
據我了解,它與這些價值觀相比:
private static short StateKnownColorValid = 0x0001;
private static short StateARGBValueValid = 0x0002;
private static short StateValueMask = (short)(StateARGBValueValid);
private static short StateNameValid = 0x0008;
private static long NotDefinedValue = 0;
因此,我的看法是,它常用於確定它是“系統顏色”還是用戶根據例如ARGB值定義的顏色。
public bool IsKnownColor
{
get { return((state & StateKnownColorValid) != 0);}
}
Color
結構重寫Equals
方法,因此在測試顏色是否相等時會自動執行正確的操作。
Equals
方法比較value
, state
, knownColor
和name
字段。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.