Compartilhar via


PropertyMetadata Construtores

Definição

Sobrecargas

PropertyMetadata(Object)

Inicializa uma nova instância da classe PropertyMetadata , usando um valor padrão de propriedade.

PropertyMetadata(Object, PropertyChangedCallback)

Inicializa uma nova instância da classe PropertyMetadata , usando um valor padrão da propriedade e uma referência de retorno de chamada.

PropertyMetadata(Object)

Inicializa uma nova instância da classe PropertyMetadata , usando um valor padrão de propriedade.

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

Parâmetros

defaultValue
Object

Platform::Object

IInspectable

Um valor padrão para a propriedade em que este PropertyMetadata é aplicado.

Aplica-se a

PropertyMetadata(Object, PropertyChangedCallback)

Inicializa uma nova instância da classe PropertyMetadata , usando um valor padrão da propriedade e uma referência de retorno de chamada.

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

Parâmetros

defaultValue
Object

Platform::Object

IInspectable

Um valor padrão para a propriedade em que este PropertyMetadata é aplicado.

propertyChangedCallback
PropertyChangedCallback

Uma referência ao retorno de chamada para chamar o comportamento alterado da propriedade.

Exemplos

Este exemplo mostra o uso desse construtor. OnLabelChanged refere-se a uma implementação de delegado para um PropertyChangedCallback (não mostrado). Para ver mais código que coloca esse exemplo em contexto, consulte Propriedades de dependência personalizadas.

public static readonly DependencyProperty LabelProperty = DependencyProperty.Register(
  "Label",
  typeof(String),
  typeof(ImageWithLabelControl),
  new PropertyMetadata(null,new PropertyChangedCallback(OnLabelChanged))
);
Public Shared ReadOnly LabelProperty As DependencyProperty = _
    DependencyProperty.Register("Label", _
      GetType(String), GetType(ImageWithLabelControl), _
      New PropertyMetadata(Nothing, new PropertyChangedCallback(AddressOf OnLabelChanged)))
DependencyProperty^ ImageWithLabelControl::_LabelProperty = 
    DependencyProperty::Register("Label", 
    Platform::String::typeid,
    ImageWithLabelControl::typeid, 
    ref new PropertyMetadata(nullptr,
      ref new PropertyChangedCallback(&ImageWithLabelControl::OnLabelChanged))
    );

Comentários

Se você quiser estabelecer uma instância PropertyMetadata que tenha um método de retorno de chamada com alteração de propriedade, mas não um valor padrão, passe nulo para defaultValue.

Se você passar um valor para defaultValue, verifique se o tipo desse valor é válido para o tipo propertyType da definição da propriedade de dependência por meio da chamada Register . Se você criou uma incompatibilidade de tipo entre o parâmetro de registro e os metadados, o problema se manifesta apenas indiretamente. Você receberá erros de runtime ao tentar instanciar um tipo que tenha esse valor de propriedade de dependência, não receberá nenhum aviso ou erro em tempo de design ou em tempo de compilação.

Confira também

Aplica-se a