我在 VB.Net 中的 WPF 上有一些形状。我添加了一个处理程序,因此我可以使用我的控件删除或编辑形状。为此,我添加了一个组合框,我想在其中显示所有 Windows.Media.Brushes,以便我可以选择一个并将颜色添加到形状中。
我的问题: - 如何将 Windows.Media.Brushes 的所有名称添加到组合框中?- 如何将名称转换回画笔?
最好的问候,斯坦
我在 VB.Net 中的 WPF 上有一些形状。我添加了一个处理程序,因此我可以使用我的控件删除或编辑形状。为此,我添加了一个组合框,我想在其中显示所有 Windows.Media.Brushes,以便我可以选择一个并将颜色添加到形状中。
我的问题: - 如何将 Windows.Media.Brushes 的所有名称添加到组合框中?- 如何将名称转换回画笔?
最好的问候,斯坦
要获取所有画笔名称的列表,只需Brushes
按类型过滤属性
var brushes = typeof(Brushes).GetProperties()
.Where (pi => pi.PropertyType == typeof(SolidColorBrush))
.Select (pi => pi.Name)
.ToList();
要将名称变回画笔,您可以再次使用反射:
var brush = typeof(Brushes).GetProperty("Blue")
.GetValue(null)
as SolidColorBrush;