Condividi tramite


PropertyMetadata Costruttori

Definizione

Overload

PropertyMetadata(Object)

Inizializza una nuova istanza della classe PropertyMetadata utilizzando un valore predefinito della proprietà.

PropertyMetadata(Object, PropertyChangedCallback)

Inizializza una nuova istanza della classe PropertyMetadata utilizzando un valore predefinito della proprietà e un riferimento di callback.

PropertyMetadata(Object)

Inizializza una nuova istanza della classe PropertyMetadata utilizzando un valore predefinito della proprietà.

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

Parametri

defaultValue
Object

Platform::Object

IInspectable

Valore predefinito per la proprietà in cui viene applicato il PropertyMetadata .

Si applica a

PropertyMetadata(Object, PropertyChangedCallback)

Inizializza una nuova istanza della classe PropertyMetadata utilizzando un valore predefinito della proprietà e un riferimento di callback.

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)

Parametri

defaultValue
Object

Platform::Object

Valore predefinito per la proprietà in cui viene applicato il PropertyMetadata .

propertyChangedCallback
PropertyChangedCallback

Riferimento al callback da chiamare per il comportamento modificato della proprietà.

Esempio

In questo esempio viene illustrato l'utilizzo di questo costruttore. OnLabelChanged fa riferimento a un'implementazione del delegato per un PropertyChangedCallback (non visualizzato). Per altre informazioni sul codice che inserisce questo esempio nel contesto, vedere Proprietà di dipendenza personalizzate.

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))
    );

Commenti

Per stabilire un'istanza di PropertyMetadata con un metodo di callback modificato dalla proprietà ma non un valore predefinito, passare null per defaultValue.

Se si passa un valore per defaultValue, assicurarsi che il tipo di tale valore sia valido per il tipo propertyType dalla definizione della proprietà di dipendenza tramite la chiamata Register. Se è stata creata una mancata corrispondenza del tipo tra il parametro di registrazione e i metadati, il problema si manifesta solo indirettamente. Si otterranno errori di runtime quando si tenta di creare un'istanza di un tipo con questo valore della proprietà di dipendenza, non si otterranno avvisi o errori in fase di progettazione o in fase di compilazione.

Vedi anche

Si applica a