来自字符串的DependencyProperty

时间:2011-06-09 10:12:42

标签: c# wpf xaml dependency-properties dependencyobject

如何将属性名称(以字符串形式)转换为DependencyProperty

我有一组属性名称,其值以字符串形式和DependencyObject。现在我想将这些属性值设置为DependencyObject。有关如何实现这一点的任何想法?

感谢。

1 个答案:

答案 0 :(得分:28)

您可以使用DependencyPropertyDescriptor.FromName方法获取DependencyPropertyDescriptor,然后从此描述符中获取依赖项属性标识符。


var descriptor = DependencyPropertyDescriptor.FromName(
    propertyName,
    dependencyObject.GetType(),
    dependencyObject.GetType());

// now you can set property value with
descriptor.SetValue(dependencyObject, value);

// also, you can use the dependency property itself
var property = descriptor.DependencyProperty;
dependencyObject.SetValue(property, value);