我想设置 StackPanel 的背景属性,目前我是通过以下代码进行设置的:
statusPanel.Background = new SolidColorBrush(Colors.Cyan);
但我只想设置一个十六进制的值。我该怎么做?
我想设置 StackPanel 的背景属性,目前我是通过以下代码进行设置的:
statusPanel.Background = new SolidColorBrush(Colors.Cyan);
但我只想设置一个十六进制的值。我该怎么做?
statusPanel.Background = new SolidColorBrush(Color.FromArgb(0xFF, 0xFF, 0, 0));
public SolidColorBrush GetColorFromHexa(string hexaColor)
{
byte R = Convert.ToByte(hexaColor.Substring(1, 2), 16);
byte G = Convert.ToByte(hexaColor.Substring(3, 2), 16);
byte B = Convert.ToByte(hexaColor.Substring(5, 2), 16);
SolidColorBrush scb = new SolidColorBrush(Color.FromArgb(0xFF, R, G, B));
return scb;
}
使用方法:
statusPanel.Background = GetColorFromHexa("#RRGGBB");
你可以使用 ColorConverter.ConvertFromString 方法。
statusPanel.Background =
new SolidColorBrush((Color)ColorConverter.ConvertFromString("#FF010203"));