场景
必要在生成一组多条曲线时,随机从一颜色数组中取颜色,至少一百种颜色以上。
而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();
复制代码
可以检察此时获取的颜色对象的数组为:
|