ARTICLE

Web based colour tool for .NET

Posted by Rob Articles | ASP.NET Programming October 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.
Reader Level:

<%@ 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>

Login to add your contents and source code to this article
post comment
     

Good use of Reflection, mate.

Posted by Ramon Esteban Oct 03, 2007
COMMENT USING
PREMIUM SPONSORS
DynamicPDF™ product line allows you to dynamically generate PDF documents, merge PDF documents and add new content to existing PDF documents from within your applications.
SPONSORED BY
  • PDF reports have never been easier to create. With our included WYSIWYG Designer, you can layout your reports, set up your data source and let DynamicPDF ReportWriter do the rest.