При просмотре образцов, прикрепленных к свойствам и поведению, я видел беспорядок использования FrameworkPropertyMetadata
, UIPropertyMetadata
и PropertyMetadata
. Поскольку все они образуют иерархию наследования, как выбрать, какой из них использовать?
Когда я должен использовать FrameworkPropertyMetadata или UIPropertyMetadata поверх простой PropertyMetadata?
Ответ 1
Эти классы должны сообщать о некоторых аспектах поведения свойства зависимостей.
Проверьте различные классы для параметров, которые они предоставляют.
Например,
если вы просто хотите вернуть свойство dp и предоставить значение по умолчанию, используйте PropertyMetadata
,
если вы хотите указать поведение анимации, используйте UIPropertyMetadata
,
но если какое-либо свойство влияет на ресурсы уровня фрейма wpf, например, на макет элемента, родительский макет или привязку данных, используйте FrameworkPropertyMetadata
.
Подробности, которые вы можете проверить на msdn http://msdn.microsoft.com/en-us/library/ms751554.aspx