如何将Color
类型声明为const
,如下所示:
private const Color MyLovedColor = Color.Blue;
这不起作用,因为Color.Blue是静态而不是const。
(readonly不会帮助我,因为我需要一个“仅支持”常量的属性的颜色
看看KnownColor
枚举。它可能会满足您的需求。
您只能为const指定一个文字值。在您的情况下,我会更喜欢字符串文字并定义您的颜色如下:
const string mycolor = "Blue";
然后,只要您需要颜色,就可以执行向后转换:
Color mynewcolor = Color.FromName(mycolor);
对不起,但这是保持它的唯一方法const
。
编辑:或者您也可以将您的颜色保持为(A)RGB属性,存储在单个int
值中。请注意,您可以使用十六进制文字来显式设置颜色的不同组件(在ARGB序列中):
const int mycolor = 0x00FFFFFF;
Color mynewcolor = Color.FromArgb(mycolor);
System.Drawing.Color
是一个struct
,这意味着你不能有一个恒定的价值。
private static readonly Color MyLovedColor = Color.Blue;
我感谢你最接近的?
如果您使用RGB函数返回的long值作为常量怎么办?
例如,为浅蓝色RGB(51,255,255)
返回的值是16777011
所以
Private Const ltBlue As Long = 16777011
txtbox1.backcolor = ltBlue