【问题标题】:How to get an array from WPF Brushes?如何从 WPF 画笔中获取数组?
【发布时间】:2012-12-26 23:48:38
【问题描述】:

我想在WPF 中创建一个现有Brushes 的数组,以便我可以循环它们并在组合框中显示列表。我该怎么做?

我有类似的东西,但它不起作用,因为 Brushes 不是数组。

string[] brushes = Brushes;

foreach (string s in brushes)
{
    comboBox.Items.Add(s);
}

【问题讨论】:

    标签: c# wpf arrays foreach brush


    【解决方案1】:

    您可以使用反射。您可以使用匿名类型来保存名称和画笔。

    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);
    

    【讨论】:

    • @Mir 您的回复对我帮助很大。感谢您分享你的知识。这是一个excellent 示例,展示了如何从typeof(Brushes).GetProperties() 中提取多个值的数组,例如Namehexadecimal 的颜色,例如Yellow , #FFFFFF00
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-24
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多