Подпишись на наш Twitter

Быть в курсе появления новых статей!

Когда вы посмотрите на метаданные для dependency property, которые хранятся как экземпляр FrameworkPropertyMetadata, вы увидите серию boolean свойств.

Для удобства, когда создается экземпляр FrameworkPropertyMetadata, вам не нужно передавать все эти значения boolean в конструктор по отдельности. Вместо этого конструктор поддерживает флаговый (flags) параметр, который является логическим ИЛИ для серии значений перечисляемого типа. Каждое перечисляемое значение берется из перечисления FrameworkPropertyMetadataOptions.

// Register ZHeightProperty dependency property
private static FrameworkPropertyMetadata meta = new FrameworkPropertyMetadata(1,   // default = 1
    FrameworkPropertyMetadataOptions.AffectsArrange | FrameworkPropertyMetadataOptions.AffectsMeasure |
    FrameworkPropertyMetadataOptions.AffectsParentArrange | FrameworkPropertyMetadataOptions.AffectsParentMeasure |
    FrameworkPropertyMetadataOptions.BindsTwoWayByDefault);
 
public static readonly DependencyProperty ZHeightProperty =
    DependencyProperty.Register("ZHeightProperty", typeof(int), typeof(ThreeDButton), meta);

Оригинал: #163 – Constructing FrameworkPropertyMetadata




Дата публикации: 22.12.2010 13:03

Ярлыки: Dependency Property, WPF