我想在Brushes
中创建一个现有WPF
的数组,以便可以循环它们并在组合框中显示列表。我怎样才能做到这一点?
我有这样的东西,但由于Brushes
不是数组,因此无法使用。
string[] brushes = Brushes;
foreach (string s in brushes)
{
comboBox.Items.Add(s);
}
最佳答案
您可以使用反射。您可以使用匿名类型来保存名称和画笔。
var values = typeof (Brushes).GetProperties().
Select(p => new { Name = p.Name, Brush = p.GetValue(null) as Brush }).
ToArray();
您只能通过以下方式访问名称:
var brushNames = values.Select(v => v.Name);