c#遍历System.drawing.Color下面的所有颜色以及名称以查看_C#教程-查字典教程网
c#遍历System.drawing.Color下面的所有颜色以及名称以查看
c#遍历System.drawing.Color下面的所有颜色以及名称以查看
发布时间:2016-12-28 来源:查字典编辑
摘要:面试的时候被问到,如何遍历System.drawing.Color下面的所有颜色以及名称以查看,当时答得不好,现将方案记录如下:复制代码代码...

面试的时候被问到,如何遍历System.drawing.Color下面的所有颜色以及名称以查看,当时答得不好,现将方案记录如下:

复制代码 代码如下:

View Code

public partial class Form1 : Form

{

FlowLayoutPanel newPanel = new FlowLayoutPanel();

public Form1()

{

InitializeComponent();

newPanel.AutoScroll = true;

//newPanel.FlowDirection = FlowDirection.BottomUp;

//newPanel.WrapContents = false;

newPanel.Dock = DockStyle.Fill;

newPanel.BackColor = Color.White;

button1.Anchor = (AnchorStyles.Bottom | AnchorStyles.Right);

}

private void button1_Click(object sender, EventArgs e)

{

newPanel.Controls.Clear();

int i = 1;

foreach (var item in typeof(Color).GetMembers())

{

if (item.MemberType == System.Reflection.MemberTypes.Property && System.Drawing.Color.FromName(item.Name).IsKnownColor == true)//只取属性且为属性中的已知Color,剔除byte属性以及一些布尔属性等(A B G R IsKnownColor Name等)

{

Label myLable = new Label();

myLable.AutoSize = true;

myLable.BackColor = System.Drawing.Color.FromName(item.Name);

myLable.Text = System.Drawing.Color.FromName(item.Name).Name;

newPanel.Controls.Add(myLable);

//newPanel.GetFlowBreak(myLable);

i++;

}

}

this.Controls.Add(newPanel);

button1.Text = i.ToString();

}

}

相关阅读
推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
  • 大家都在看
  • 小编推荐
  • 猜你喜欢
  • 最新C#教程学习
    热门C#教程学习
    编程开发子分类