工具效果如下图:
代码:
namespace WinFormsColor
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void displayColor()
{
Control listControl = this.Controls["listView_Color"];
if (listControl != null)
{
listControl.Visible = true;
return;
}
ListView listView_Color = new ListView();
System.Windows.Forms.ColumnHeader columnHeaderA = new System.Windows.Forms.ColumnHeader();
System.Windows.Forms.ColumnHeader columnHeaderB = new System.Windows.Forms.ColumnHeader();
System.Windows.Forms.ColumnHeader columnHeaderC = new System.Windows.Forms.ColumnHeader();
System.Windows.Forms.ColumnHeader columnHeaderD = new System.Windows.Forms.ColumnHeader();
System.Windows.Forms.ColumnHeader columnHeaderE = new System.Windows.Forms.ColumnHeader();
System.Windows.Forms.ColumnHeader columnHeaderF = new System.Windows.Forms.ColumnHeader();
columnHeaderA.Width = 200;
listView_Color.Columns.AddRange(new System.Windows.Forms.ColumnHeader[] {
columnHeaderA,
columnHeaderB,
columnHeaderC,
columnHeaderD,
columnHeaderE,
columnHeaderF
});
string[] strArr = new string[6];
System.Array colorsArray = Enum.GetValues(typeof(System.Drawing.KnownColor));
for (int i = 0; i < colorsArray.Length; i++)
{
string colorName = colorsArray.GetValue(i).ToString();
//if (colorName.Contains("Green"))
{
System.Drawing.Color color = System.Drawing.Color.FromName(colorName);
for (int j = 0; j < 6; j++)
strArr[j] = colorName;
ListViewItem li = new ListViewItem(strArr);
li.ForeColor = color;
listView_Color.Items.Add(li);
li = new ListViewItem(strArr);
li.BackColor = color;
listView_Color.Items.Add(li);
li = new ListViewItem(strArr);
li.BackColor = color;
li.ForeColor = System.Drawing.Color.White;
listView_Color.Items.Add(li);
}
}
this.Controls.Add(listView_Color);
listView_Color.BringToFront();
listView_Color.Dock = DockStyle.Fill;
listView_Color.View = System.Windows.Forms.View.Details;
columnHeaderF.Width = listView_Color.DisplayRectangle.Width - columnHeaderA.Width - columnHeaderB.Width - columnHeaderC.Width - columnHeaderD.Width - columnHeaderE.Width;
listView_Color.Name = "listView_Color";
}
private void hideColor()
{
Control listControl = this.Controls["listView_Color"];
if (listControl != null)
listControl.Visible = false;
}
private void Form1_Load(object sender, EventArgs e)
{
this.Text = "c#颜色名称对应表";
displayColor();
}
}
}