Поделиться через


PropertyMetadata Конструкторы

Определение

Перегрузки

PropertyMetadata(Object)

Инициализирует новый экземпляр класса propertyMetadata с помощью значения свойства по умолчанию.

PropertyMetadata(Object, PropertyChangedCallback)

Инициализирует новый экземпляр класса PropertyMetadata с помощью значения свойства по умолчанию и ссылки на обратный вызов.

PropertyMetadata(Object)

Инициализирует новый экземпляр класса propertyMetadata с помощью значения свойства по умолчанию.

public:
 PropertyMetadata(Platform::Object ^ defaultValue);
 PropertyMetadata(IInspectable const& defaultValue);
public PropertyMetadata(object defaultValue);
function PropertyMetadata(defaultValue)
Public Sub New (defaultValue As Object)

Параметры

defaultValue
Object

Platform::Object

IInspectable

Значение по умолчанию для свойства, в котором применяется этот PropertyMetadata.

Применяется к

PropertyMetadata(Object, PropertyChangedCallback)

Инициализирует новый экземпляр класса PropertyMetadata с помощью значения свойства по умолчанию и ссылки на обратный вызов.

public:
 PropertyMetadata(Platform::Object ^ defaultValue, PropertyChangedCallback ^ propertyChangedCallback);
public PropertyMetadata(object defaultValue, PropertyChangedCallback propertyChangedCallback);
function PropertyMetadata(defaultValue, propertyChangedCallback)
Public Sub New (defaultValue As Object, propertyChangedCallback As PropertyChangedCallback)

Параметры

defaultValue
Object

Platform::Object

Значение по умолчанию для свойства, в котором применяется этот PropertyMetadata.

propertyChangedCallback
PropertyChangedCallback

Ссылка на обратный вызов для вызова измененного свойства поведения.

Примеры

В этом примере показано использование этого конструктора. OnLabelChanged ссылается на реализацию делегата для PropertyChangedCallback (не отображается). Дополнительные сведения о коде, который помещает этот пример в контекст, см. в разделе свойства настраиваемых зависимостей.

public static readonly DependencyProperty LabelProperty = DependencyProperty.Register(
  "Label",
  typeof(String),
  typeof(ImageWithLabelControl),
  new PropertyMetadata(null,new PropertyChangedCallback(OnLabelChanged))
);
DependencyProperty^ ImageWithLabelControl::_LabelProperty = 
    DependencyProperty::Register("Label", 
    Platform::String::typeid,
    ImageWithLabelControl::typeid, 
    ref new PropertyMetadata(nullptr,
      ref new PropertyChangedCallback(&ImageWithLabelControl::OnLabelChanged))
    );

Комментарии

Если вы хотите установить экземпляр PropertyMetadata с методом обратного вызова, измененным свойством, но не значением по умолчанию, передайте null для defaultValue.

Если вы передаете значение для defaultValue, убедитесь, что тип этого значения действителен для типа propertyType из определения свойства зависимости через вызов Register. Если вы создали несоответствие типов между параметром регистрации и метаданными, проблема проявляется только косвенно. При попытке создать экземпляр типа с таким значением свойства зависимостей возникают ошибки среды выполнения, вы не получите предупреждения о времени разработки или компиляции или ошибки.

См. также раздел

Применяется к