2011-01-11 67 views

答えて

51

あなたは以下の変換方向の両方の例を見ることができます。

Drawing.ColorWindows.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

// 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); 
2

...または使用Drawing.Colorへ@ R拡張機能としてイオンウィリアムズの答え:

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)); 
} 
7

頻繁に使用するためには、私はこのようなヘルパーをお勧め:

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); 
    } 
} 
関連する問題