読者です 読者をやめる 読者になる 読者になる

しばやん雑記

ASP.NET とメイドさんが大好きなフリーランスのプログラマーのブログ

System.Drawing.Color で定義されている色の一覧を取得する

GDI+ の Color クラスで予め定義されている色がどんな色なのかわからなかったので、リフレクションを使って取得するコードを書いてみました。特に難しいことはしていません。

var baseColor = new Color();

foreach (var propertyInfo in typeof(Color).GetProperties().Where(x => x.PropertyType == typeof(Color)))
{
    var color = (Color)propertyInfo.GetValue(baseColor, null);

    Console.WriteLine("{0} : #{1:X2}{2:X2}{3:X2}{4:X2}", color.Name, color.A, color.R, color.G, color.B);
}

実行すると色名と 16 進数のカラーコードが表示されます。

f:id:shiba-yan:20150809003121p:plain

本来なら実際に色を表示したいところですが、コンソールでは無理なのでこの形にしました。