Vb.net 使用Color.FromName调用用户定义的颜色,Visual Basic
我定义了一个新系统。Drawing.ColorVb.net 使用Color.FromName调用用户定义的颜色,Visual Basic,vb.net,string,colors,Vb.net,String,Colors,我定义了一个新系统。Drawing.Color Public CustomBackColor As System.Drawing.Color = Color.FromArgb(200, 4, 146) 现在,我有了一个GlobalBackColor作为字符串,我希望它成为我的新CustomBackColor值 我的问题是,是否有任何方法可以将CustomBackColorSystem.Drawing.Color写入GlobalBackColor字符串。或者,使CustomBackColor成为
Public CustomBackColor As System.Drawing.Color = Color.FromArgb(200, 4, 146)
现在,我有了一个GlobalBackColor作为字符串
,我希望它成为我的新CustomBackColor
值
我的问题是,是否有任何方法可以将CustomBackColorSystem.Drawing.Color
写入GlobalBackColor字符串
。或者,使CustomBackColor成为默认的系统颜色,以便我可以像这样定义GlobalBackColor:GlobalBackColor=“CustomBackColor”
无论如何,我希望能够这样定义它:
pbR001C03.BackColor=Color.FromName(GlobalBackColor)
编辑:
pbR001C03
是一个图片盒
在这个例子中
Public CustomBackColor As System.Drawing.Color=Color.FromArgb(200,4146)
Public GlobalBackColor作为字符串
Public子示例()
End Sub
GlobalBackColor=Color.FromName(CustomBackColor)
似乎不适合我。没有错误,只是一种黑色。您不能像这样使用,但您不需要使用它。由于您的
CustomBackColor
属于System.Drawing.Color
类型,因此您可以将其直接用于System.Drawing.Color
pbR001C03.BackColor = GlobalBackColor
以下是MSDN中的方法说明:
根据预定义的颜色的指定名称创建颜色结构
(来源不以粗体显示)
实际上没有可能将
Color.FromName
与自定义名称一起使用,因为它需要扩展枚举,并且需要更改/扩展系统。绘图枚举在vb.net中不可能pbR001C03.BackColor=Color。FromName(GlobalBackColor)
对我来说很好,当pbR001C03
是表单控件时。在您的案例中,什么是pbR001C03
?你犯了什么错误?我在我的问题上加了一个例子^是的,我说的没错。问题是我需要GlobalBackColor
成为一个String
。为什么你认为你需要它作为一个字符串呢?因为GlobalBackColor
在我目前编辑的应用程序源代码中用于多个操作。否则我显然会使用Color
类型作为GlobalBackColor
;)所以直接使用颜色,为什么它必须是字符串?你能提供一个具体的例子,说明你可以使用字符串,但不能使用颜色吗?例如,Public-Sub-SolidFill(可选的BackColor为string=“Black”)
。
End-Sub
如果我使用color
类型作为BackColor,它会抛出一个常量表达式required-exception.Whops,没有看到答案
pbR001C03.BackColor = GlobalBackColor