在WPF中将整数转换为颜色

use*_*678 8 .net c# wpf colors

如何在WPF中将整数转换为颜色?例如,我想将16711935转换为颜色.

如何在Windows窗体中执行类似下面的操作,在WPF中?

myControl.Background = Color.FromArgb(myColorInt);
Run Code Online (Sandbox Code Playgroud)

Mar*_*all 13

使用BitConverterClass将值转换为字节数组,这样您就不需要导入另一个命名空间.

byte[] bytes = BitConverter.GetBytes(16711935);
this.Background = new SolidColorBrush( Color.FromArgb(bytes[3],bytes[2],bytes[1],bytes[0]));
Run Code Online (Sandbox Code Playgroud)

  • 这样做的好方法.但请注意,如果整数按顺序包含argb值 - alpha占据最左边的位,则可能需要参数Color.FromArgb反过来... Color.FromArgb(bytes [3],bytes [2] ,字节[1],字节[0]) (4认同)
  • @优秀的答案。谢谢。 (2认同)
  • 正如Simon所说,如果您要转换由System.Drawing.Color.ToArgb方法输出的int字节,则确实需要反转字节,这是一个很好的答案。 (2认同)