paleta hexadecimal fromknowncolor fromargb example custom colores color c# colors

c# - hexadecimal - Cómo convertir de System.Drawing.Color a System.Windows.Media.Color?



custom color c# (3)

... o use la respuesta de @Rion Williams como una extensión:

public static System.Windows.Media.Brush ToBrush(this System.Drawing.Color color) { return new System.Windows.Media.SolidColorBrush(System.Windows.Media.Color.FromArgb(color.A, color.R, color.G, color.B)); }

¿Cómo puedo convertir entre estos dos tipos de colores?


Para uso frecuente sugiero ayudante como este:

using SDColor = System.Drawing.Color; using SWMColor = System.Windows.Media.Color; namespace ColorHelper { public static class ColorExt { public static SWMColor ToSWMColor(this SDColor color) => SWMColor.FromArgb(color.A, color.R, color.G, color.B); public static SDColor ToSDColor(this SWMColor color) => SDColor.FromArgb(color.A, color.R, color.G, color.B); } }


Puede ver ejemplos de las dos direcciones de conversión a continuación:

Drawing.Color a Windows.Media.Color

// This is your color to convert from System.Drawing.Color color; System.Windows.Media.Color newColor = System.Windows.Media.Color.FromArgb(color.A, color.R, color.G, color.B);

Windows.Media.Color a Drawing.Color

// This is your color to convert from System.Windows.Media.Color color; System.Drawing.Color newColor = System.Drawing.Color.FromArgb(color.A, color.R, color.G, color.B);