c#遍曆System.drawing.Color下面的所有顏色以及名稱以查看

來源:互聯網
上載者:User

面試的時候被問到,如何遍曆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();
}
}

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.