C#中怎樣獲取System.Drawing.Color的所有顏色對象並存到數組中


場景

需要在生成一組多條曲線時,隨機從一顏色數組中取顏色,至少一百種顏色以上。

而System.Drawing.Color自帶140多種顏色

 

 

那么怎樣將其自帶的顏色對象取出並存在數組中。

注:

博客主頁:
https://blog.csdn.net/badao_liumang_qizhi
關注公眾號
霸道的程序猿
獲取編程相關電子書、教程推送與免費下載

實現

//用於存取取出的顏色對象
List<Color> colorList = new List<Color>();
//通過GetMember獲取所有的公共成員
foreach (var item in typeof(Color).GetMembers())
      {
       //只取屬性且為屬性中的已知Color,剔除byte屬性以及一些布爾屬性等(A B G R IsKnownColor Name等)
          if (item.MemberType == System.Reflection.MemberTypes.Property && System.Drawing.Color.FromName

(item.Name).IsKnownColor == true)
              {
                  Color color = System.Drawing.Color.FromName(item.Name);
                  colorList.Add(color);
               }
        }
//轉成數組
Color[] colors = colorList.ToArray();

可以查看此時獲取的顏色對象的數組為:

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM