logo

ASP.NET Color Tool Derived from Reflection

By beto74 dixon
Printer Friendly Version
View My Articles
147 Views
    

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" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<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(lbl);
                phl.Controls.Add(new LiteralControl("&nbsp;"));
                phl.Controls.Add(lit);
                phl.Controls.Add(new LiteralControl("<br />")); 
            }
        }
       
    }

 

</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>System.Drawing.Color</title>
</head>
<body>
    <form id="form1" runat="server">
    <asp:PlaceHolder ID="phl" runat="server"></asp:PlaceHolder>
    </form>
</body>
</html>




Didn't Find The Answer You Were Looking For?

EggHeadCafe has experts online right now that may know the answer to your question.  We pay them a bonus for answering as many questions as they can.  So, why not help them and yourself by becoming a member (free) and ask them your question right now?
Ask Question In Live Forum

If you have an OpenID and do not want to become a member of the EggHeadCafe forum, you can also sign on to Chat Chaos and post your question to our real time Silverlight chat application.
Ask Question In Chat Chaos

Article Discussion: Web based colour tool
beto74 dixon posted at Tuesday, October 02, 2007 5:19 AM
Original Article
 






  $1000 Contest    [)ia6l0 iii - $228  |  Jonathan VH - $161  |  Huggy Bear - $135  |  F Cali - $95  |  egg egg - $94  |  more Advertise  |  Privacy  |   (c) 2010