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

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

Когда вы реализуете dependency property, которое будет использовано как присоединяемое свойство XAML, вы используете метод DependencyProperty.RegisterAttached, а не метод DependencyProperty.Register. Описание определения метода RegisterAttached аналогично Register, включая все параметры.

В примере ниже, когда мы регистрируем Person.AgeProperty, которое мы хотим использовать как присоединяемое свойство XAML.

static PropertyMetadata ageMetadata =
    new PropertyMetadata(0, null, new CoerceValueCallback(CoerceAge));
 
public static readonly DependencyProperty AgeProperty =
    DependencyProperty.RegisterAttached("Age", typeof(int), typeof(Person), ageMetadata);
 
public static void SetAge(DependencyObject depObj, int value)
{
    depObj.SetValue(AgeProperty, value);
}

Обратите внимание, так как мы хотим использовать Age, как присоединяемое свойство, мы также должны реализовать метод SetAge (Стандартные оберточные свойства CLR также необходимы, но здесь не показаны).

Оригинал: #155 – Implementing an Attached Dependency Property




Дата публикации: 14.12.2010 13:10

Ярлыки: Dependency Property, WPF, XAML