When looking at sample attached properties and behaviors, I've seen a mishmash of uses of FrameworkPropertyMetadata
, UIPropertyMetadata
and PropertyMetadata
. Since they all form an inheritance hierarchy, how do I choose which one to use?
These classes are to report some behavior aspects of a dependency property.
Check the different classes for the options they provide.
For example,
if you just want to back a property by dp and provide a default value, use PropertyMetadata
,
if you want to specify animation behavior, use UIPropertyMetadata
,
but if some property affects wpf framework level stuffs eg element layout, parent layout or databinding, use FrameworkPropertyMetadata
.
Details you can check on msdn http://msdn.microsoft.com/en-us/library/ms751554.aspx