将字符串转换为颜色VB.NET

时间:2015-11-24 05:29:18

标签: vb.net colors

我正在使用colordialog让用户选择一种颜色,然后将其保存到数据库中。当加载颜色以填充标签时,它就像一个字符串。 如何转换:

Color `[A=255, R=128, G=128, B=255]` to color

有没有办法保存用户选择的值

如果我使用这些选项,则alpha值将丢失

Dim c As Color
c = Color.FromName("red")
c = Color.FromArgb(255, 0, 0)  
c = Color.FromKnownColor(KnownColor.Red)

1 个答案:

答案 0 :(得分:1)

正如评论所说,您可以存储32-bit ARGB value。它基本上是一个数值。如果你这样编码,那么就不需要编写一个函数来提取颜色值。

'your string selected from a color dialog
Dim clrDialog As New ColorDialog
If clrDialog.ShowDialog = Windows.Forms.DialogResult.OK Then
        TextBox1.Text = clrDialog.Color.ToArgb.ToString 
End If
clrDialog.Dispose()

' to get back ARGB value from string
TextBox1.BackColor = Color.FromArgb(CInt(TextBox1.Text))