Introduction
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.
Code
<%@ 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 Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs)
Dim t As Type = GetType(System.Drawing.Color)
For Each fi As PropertyInfo In t.GetProperties()
If fi.PropertyType.ToString() = "System.Drawing.Color" Then
Dim colorName As String = fi.Name
Dim lbl As New Label()
Dim lit As New LiteralControl()
Dim c As Color = 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(" "))
phl.Controls.Add(lit)
phl.Controls.Add(New LiteralControl("<br />"))
End If
Next
End Sub
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head id="Head1" 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>
Join the conversation! Your thoughts help the community grow.