问题
How do I convert a property name (in string) to a DependencyProperty
?
I have a set of property names, its values in string and a DependencyObject
. Now I want to set these property values to the DependencyObject
. Any idea on how this can be achieved?
Thanks.
回答1:
You can get DependencyPropertyDescriptor using DependencyPropertyDescriptor.FromName method and then get dependency property identifier from this descriptor.
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);
来源:https://stackoverflow.com/questions/6291201/dependencyproperty-from-string