Reader Level:
ASP.NET Programming

Web based colour tool for .NET

By Rob on Oct 02, 2007
The .NET Framework provides us with over 100 colours to use within the System.Drawing namespace. In order that we know exactly what all these colours look like here is a simple web based tool that uses Reflection to loop through all the colours with the System.Drawing.Color struct and print them to the page.

<%@ Page Language="C#" %>
<%@ Import Namespace="System.Reflection" %>
<%@ Import Namespace="System.Drawing" %>
<%@ Import Namespace="System.Drawing.Imaging" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "">

<script runat="server">
    protected void Page_Load(object sender, EventArgs e)

        Type t = typeof(System.Drawing.Color);

        foreach (PropertyInfo fi in t.GetProperties())
            if (fi.PropertyType.ToString() == "System.Drawing.Color")
                string colorName = fi.Name;
                Label lbl = new Label();
                LiteralControl lit = new LiteralControl();
                Color c = System.Drawing.Color.FromName(colorName);

                lit.Text = "System.Drawing.Color." + colorName; 
                lbl.BackColor = c;
                lbl.Width = Unit.Pixel(300);
                lbl.Height = Unit.Pixel(20);
                lbl.BorderWidth = Unit.Pixel(1);

                phl.Controls.Add(new LiteralControl("&nbsp;"));
                phl.Controls.Add(new LiteralControl("<br />")); 

<html xmlns="" >
<head runat="server">
    <form id="form1" runat="server">
    <asp:PlaceHolder ID="phl" runat="server"></asp:PlaceHolder>