Today, I was working on a Windows application where I need to display listing of all colors in a ComboBox and selection of the color sets the background color of a Form.
In Windows Forms, the Color structure has a public property for each color. We can use System.Reflection to read all colors of a Color structure and load its properties.
On my Form, I have a ColorComboBox control. The following code adds all colors to the ComboBox.
foreach (System.Reflection.PropertyInfo prop in typeof(Color).GetProperties())
{
if (prop.PropertyType.FullName == "System.Drawing.Color")
ColorComboBox.Items.Add(prop.Name);
}