Condividi tramite


FrameworkPropertyMetadata Costruttori

Definizione

Inizializza una nuova istanza della classe FrameworkPropertyMetadata.

Overload

FrameworkPropertyMetadata()

Inizializza una nuova istanza della classe FrameworkPropertyMetadata.

FrameworkPropertyMetadata(Object)

Inizializza una nuova istanza della classe FrameworkPropertyMetadata con il valore predefinito specificato.

FrameworkPropertyMetadata(PropertyChangedCallback)

Inizializza una nuova istanza della classe FrameworkPropertyMetadata con il callback specificato PropertyChangedCallback.

FrameworkPropertyMetadata(Object, FrameworkPropertyMetadataOptions)

Inizializza una nuova istanza della classe FrameworkPropertyMetadata con il valore fornito predefinito e le opzioni dei metadati a livello di framework.

FrameworkPropertyMetadata(Object, PropertyChangedCallback)

Inizializza una nuova istanza della classe FrameworkPropertyMetadata con il valore fornito predefinito e il callback specificato PropertyChangedCallback.

FrameworkPropertyMetadata(PropertyChangedCallback, CoerceValueCallback)

Inizializza una nuova istanza della classe FrameworkPropertyMetadata con i callback specificati.

FrameworkPropertyMetadata(Object, FrameworkPropertyMetadataOptions, PropertyChangedCallback)

Inizializza una nuova istanza della classe FrameworkPropertyMetadata con il valore fornito predefinito e le opzioni dei metadati a livello di framework, e il callback specificato PropertyChangedCallback.

FrameworkPropertyMetadata(Object, PropertyChangedCallback, CoerceValueCallback)

Inizializza una nuova istanza della classe FrameworkPropertyMetadata con il valore fornito predefinito e i callback specificati.

FrameworkPropertyMetadata(Object, FrameworkPropertyMetadataOptions, PropertyChangedCallback, CoerceValueCallback)

Inizializza una nuova istanza della classe FrameworkPropertyMetadata con il valore fornito predefinito e le opzioni dei metadati a livello di framework, e i callback specificati.

FrameworkPropertyMetadata(Object, FrameworkPropertyMetadataOptions, PropertyChangedCallback, CoerceValueCallback, Boolean)

Inizializza una nuova istanza della classe FrameworkPropertyMetadata con il valore fornito predefinito ed opzioni di metadati di framework, callback specificati ed un Booleano che può essere utilizzato per impedire l’animazione della proprietà.

FrameworkPropertyMetadata(Object, FrameworkPropertyMetadataOptions, PropertyChangedCallback, CoerceValueCallback, Boolean, UpdateSourceTrigger)

Inizializza una nuova istanza della classe FrameworkPropertyMetadata con il valore fornito predefinito ed opzioni di metadati di framework, callback specificati ed un Booleano che può essere utilizzato per impedire l’animazione della proprietà, e un'impostazione predefinita di trigger di aggiornamento di associazione dati.

FrameworkPropertyMetadata()

Inizializza una nuova istanza della classe FrameworkPropertyMetadata.

public:
 FrameworkPropertyMetadata();
public FrameworkPropertyMetadata ();
Public Sub New ()

Commenti

Questa firma inizializza tutti i valori delle FrameworkPropertyMetadata proprietà predefiniti. DefaultValue sarà null, e le varie FrameworkPropertyMetadata proprietà booleane saranno false.

Vedi anche

Si applica a

FrameworkPropertyMetadata(Object)

Inizializza una nuova istanza della classe FrameworkPropertyMetadata con il valore predefinito specificato.

public:
 FrameworkPropertyMetadata(System::Object ^ defaultValue);
public FrameworkPropertyMetadata (object defaultValue);
new System.Windows.FrameworkPropertyMetadata : obj -> System.Windows.FrameworkPropertyMetadata
Public Sub New (defaultValue As Object)

Parametri

defaultValue
Object

Valore predefinito della proprietà di dipendenza, in genere fornito come valore di un tipo specifico.

Eccezioni

defaultValue è impostato su UnsetValue.

Esempio

Nell'esempio seguente viene chiamata la firma del costruttore:

static FrameworkPropertyMetadata fpm;
fpm = new FrameworkPropertyMetadata(Double.NaN);

Commenti

Il tipo del valore specificato per defaultValue deve corrispondere o essere correlato al tipo specificato nella registrazione originale della proprietà di dipendenza a cui verranno applicati questi metadati. Non corrispondenze tra il tipo di valore predefinito dei metadati e il tipo della proprietà di dipendenza che viene applicata per può essere difficile eseguire il debug, perché la mancata corrispondenza non è rilevabile durante la compilazione. Il sistema delle proprietà non valuta il valore effettivo di una proprietà fino a quando non viene eseguito il tempo di esecuzione, pertanto il risultato di un tipo di valore/tipo di proprietà predefinito non corrisponde a un errore di runtime.

Il valore UnsetValue ha un significato speciale nel sistema delle proprietà e non può essere usato come valore predefinito della proprietà di dipendenza.

Vedi anche

Si applica a

FrameworkPropertyMetadata(PropertyChangedCallback)

Inizializza una nuova istanza della classe FrameworkPropertyMetadata con il callback specificato PropertyChangedCallback.

public:
 FrameworkPropertyMetadata(System::Windows::PropertyChangedCallback ^ propertyChangedCallback);
public FrameworkPropertyMetadata (System.Windows.PropertyChangedCallback propertyChangedCallback);
new System.Windows.FrameworkPropertyMetadata : System.Windows.PropertyChangedCallback -> System.Windows.FrameworkPropertyMetadata
Public Sub New (propertyChangedCallback As PropertyChangedCallback)

Parametri

propertyChangedCallback
PropertyChangedCallback

Un riferimento ad un'implementazione del gestore che il sistema di proprietà chiamerà ogni volta che il valore effettivo della proprietà si modifica.

Esempio

Nell'esempio seguente viene chiamata la firma del costruttore:

static FrameworkPropertyMetadata fpm;
fpm = new FrameworkPropertyMetadata(new PropertyChangedCallback(OnCurrentReadingChanged));

Si applica a

FrameworkPropertyMetadata(Object, FrameworkPropertyMetadataOptions)

Inizializza una nuova istanza della classe FrameworkPropertyMetadata con il valore fornito predefinito e le opzioni dei metadati a livello di framework.

public:
 FrameworkPropertyMetadata(System::Object ^ defaultValue, System::Windows::FrameworkPropertyMetadataOptions flags);
public FrameworkPropertyMetadata (object defaultValue, System.Windows.FrameworkPropertyMetadataOptions flags);
new System.Windows.FrameworkPropertyMetadata : obj * System.Windows.FrameworkPropertyMetadataOptions -> System.Windows.FrameworkPropertyMetadata
Public Sub New (defaultValue As Object, flags As FrameworkPropertyMetadataOptions)

Parametri

defaultValue
Object

Valore predefinito della proprietà di dipendenza, in genere fornito come valore di un tipo specifico.

flags
FrameworkPropertyMetadataOptions

Flag dell’opzione dei metadati (una combinazione dei valori FrameworkPropertyMetadataOptions ). Queste opzioni specificano le caratteristiche della proprietà di dipendenza che interagiscono con sistemi come ad esempio layout o associazione dati.

Eccezioni

defaultValue è impostato su UnsetValue.

Esempio

Nell'esempio seguente viene chiamata la firma del costruttore:

static FrameworkPropertyMetadata fpm;
fpm = new FrameworkPropertyMetadata(
    Double.NaN,
    (FrameworkPropertyMetadataOptions.AffectsRender |
      FrameworkPropertyMetadataOptions.BindsTwoWayByDefault)
);

Commenti

Il tipo del valore specificato per defaultValue deve corrispondere o essere correlato al tipo specificato nella registrazione originale della proprietà di dipendenza a cui verranno applicati questi metadati. Non corrispondenze tra il tipo di valore predefinito dei metadati e il tipo della proprietà di dipendenza che viene applicata per può essere difficile eseguire il debug, perché la mancata corrispondenza non è rilevabile durante la compilazione. Il sistema delle proprietà non valuta il valore effettivo di una proprietà fino a quando non viene eseguito il tempo di esecuzione, pertanto il risultato di un tipo di valore/tipo di proprietà predefinito non corrisponde a un errore di runtime.

Il valore UnsetValue ha un significato speciale nel sistema delle proprietà e non può essere usato come valore predefinito della proprietà di dipendenza.

I valori contrassegnati come flag impostati nel flags parametro impostano il valore booleano delle FrameworkPropertyMetadata proprietà che corrispondono FrameworkPropertyMetadataOptions al nome del flag su true. È successivamente possibile modificare i valori delle proprietà nei metadati, purché i metadati non siano ancora stati applicati a un'operazione di sistema delle proprietà specifica.

Vedi anche

Si applica a

FrameworkPropertyMetadata(Object, PropertyChangedCallback)

Inizializza una nuova istanza della classe FrameworkPropertyMetadata con il valore fornito predefinito e il callback specificato PropertyChangedCallback.

public:
 FrameworkPropertyMetadata(System::Object ^ defaultValue, System::Windows::PropertyChangedCallback ^ propertyChangedCallback);
public FrameworkPropertyMetadata (object defaultValue, System.Windows.PropertyChangedCallback propertyChangedCallback);
new System.Windows.FrameworkPropertyMetadata : obj * System.Windows.PropertyChangedCallback -> System.Windows.FrameworkPropertyMetadata
Public Sub New (defaultValue As Object, propertyChangedCallback As PropertyChangedCallback)

Parametri

defaultValue
Object

Valore predefinito della proprietà di dipendenza, in genere fornito come valore di un tipo specifico.

propertyChangedCallback
PropertyChangedCallback

Un riferimento ad un'implementazione del gestore che il sistema di proprietà chiamerà ogni volta che il valore effettivo della proprietà si modifica.

Eccezioni

defaultValue è impostato su UnsetValue.

Esempio

Nell'esempio seguente viene chiamata la firma del costruttore:

static FrameworkPropertyMetadata fpm;
fpm = new FrameworkPropertyMetadata(
    Double.NaN,
    new PropertyChangedCallback(OnCurrentReadingChanged)
);

Commenti

Il tipo del valore specificato per defaultValue deve corrispondere o essere correlato al tipo specificato nella registrazione originale della proprietà di dipendenza a cui verranno applicati questi metadati. Non corrispondenze tra il tipo di valore predefinito dei metadati e il tipo della proprietà di dipendenza che viene applicata per può essere difficile eseguire il debug, perché la mancata corrispondenza non è rilevabile durante la compilazione. Il sistema delle proprietà non valuta il valore effettivo di una proprietà fino a quando non viene eseguito il tempo di esecuzione, pertanto il risultato di un tipo di valore/tipo di proprietà predefinito non corrisponde a un errore di runtime.

Il valore UnsetValue ha un significato speciale nel sistema delle proprietà e non può essere usato come valore predefinito della proprietà di dipendenza.

Vedi anche

Si applica a

FrameworkPropertyMetadata(PropertyChangedCallback, CoerceValueCallback)

Inizializza una nuova istanza della classe FrameworkPropertyMetadata con i callback specificati.

public:
 FrameworkPropertyMetadata(System::Windows::PropertyChangedCallback ^ propertyChangedCallback, System::Windows::CoerceValueCallback ^ coerceValueCallback);
public FrameworkPropertyMetadata (System.Windows.PropertyChangedCallback propertyChangedCallback, System.Windows.CoerceValueCallback coerceValueCallback);
new System.Windows.FrameworkPropertyMetadata : System.Windows.PropertyChangedCallback * System.Windows.CoerceValueCallback -> System.Windows.FrameworkPropertyMetadata
Public Sub New (propertyChangedCallback As PropertyChangedCallback, coerceValueCallback As CoerceValueCallback)

Parametri

propertyChangedCallback
PropertyChangedCallback

Un riferimento ad un'implementazione del gestore che il sistema di proprietà chiamerà ogni volta che il valore effettivo della proprietà si modifica.

coerceValueCallback
CoerceValueCallback

Un riferimento ad un'implementazione del gestore sarà richiesto ogni qualvolta il sistema di proprietà chiamerà CoerceValue(DependencyProperty) per questa proprietà di dipendenza.

Esempio

Nell'esempio seguente viene chiamata la firma del costruttore:

static FrameworkPropertyMetadata fpm;
fpm = new FrameworkPropertyMetadata(
    new PropertyChangedCallback(OnCurrentReadingChanged),
    new CoerceValueCallback(CoerceCurrentReading)
);

Commenti

Questa implementazione chiama un inizializzatore di base e quindi aggiunge l'impostazione della coerceValueCallback proprietà nell'istanza di base.

Vedi anche

Si applica a

FrameworkPropertyMetadata(Object, FrameworkPropertyMetadataOptions, PropertyChangedCallback)

Inizializza una nuova istanza della classe FrameworkPropertyMetadata con il valore fornito predefinito e le opzioni dei metadati a livello di framework, e il callback specificato PropertyChangedCallback.

public:
 FrameworkPropertyMetadata(System::Object ^ defaultValue, System::Windows::FrameworkPropertyMetadataOptions flags, System::Windows::PropertyChangedCallback ^ propertyChangedCallback);
public FrameworkPropertyMetadata (object defaultValue, System.Windows.FrameworkPropertyMetadataOptions flags, System.Windows.PropertyChangedCallback propertyChangedCallback);
new System.Windows.FrameworkPropertyMetadata : obj * System.Windows.FrameworkPropertyMetadataOptions * System.Windows.PropertyChangedCallback -> System.Windows.FrameworkPropertyMetadata
Public Sub New (defaultValue As Object, flags As FrameworkPropertyMetadataOptions, propertyChangedCallback As PropertyChangedCallback)

Parametri

defaultValue
Object

Valore predefinito della proprietà di dipendenza, in genere fornito come valore di un tipo specifico.

flags
FrameworkPropertyMetadataOptions

Flag dell’opzione dei metadati (una combinazione dei valori FrameworkPropertyMetadataOptions ). Queste opzioni specificano le caratteristiche della proprietà di dipendenza che interagiscono con sistemi come ad esempio layout o associazione dati.

propertyChangedCallback
PropertyChangedCallback

Un riferimento ad un'implementazione del gestore che il sistema di proprietà chiamerà ogni volta che il valore effettivo della proprietà si modifica.

Eccezioni

defaultValue è impostato su UnsetValue.

Esempio

Nell'esempio seguente viene chiamata la firma del costruttore:

static FrameworkPropertyMetadata fpm;
fpm = new FrameworkPropertyMetadata(
    Double.NaN,
    (FrameworkPropertyMetadataOptions.AffectsRender |
      FrameworkPropertyMetadataOptions.BindsTwoWayByDefault),
    new PropertyChangedCallback(OnCurrentReadingChanged)
);

Commenti

Il tipo del valore specificato per defaultValue deve corrispondere o essere correlato al tipo specificato nella registrazione originale della proprietà di dipendenza a cui verranno applicati questi metadati. Non corrispondenze tra il tipo di valore predefinito dei metadati e il tipo della proprietà di dipendenza che viene applicata per può essere difficile eseguire il debug, perché la mancata corrispondenza non è rilevabile durante la compilazione. Il sistema delle proprietà non valuta il valore effettivo di una proprietà fino a quando non viene eseguito il tempo di esecuzione, pertanto il risultato di un tipo di valore/tipo di proprietà predefinito non corrisponde a un errore di runtime.

Il valore UnsetValue ha un significato speciale nel sistema delle proprietà e non può essere usato come valore predefinito della proprietà di dipendenza.

I valori contrassegnati come flag impostati nel flags parametro impostano il valore booleano delle FrameworkPropertyMetadata proprietà che corrispondono FrameworkPropertyMetadataOptions al nome del flag su true. È comunque possibile modificare i valori delle proprietà nei metadati, purché i metadati non siano ancora stati applicati a un'operazione di sistema delle proprietà specifica.

Vedi anche

Si applica a

FrameworkPropertyMetadata(Object, PropertyChangedCallback, CoerceValueCallback)

Inizializza una nuova istanza della classe FrameworkPropertyMetadata con il valore fornito predefinito e i callback specificati.

public:
 FrameworkPropertyMetadata(System::Object ^ defaultValue, System::Windows::PropertyChangedCallback ^ propertyChangedCallback, System::Windows::CoerceValueCallback ^ coerceValueCallback);
public FrameworkPropertyMetadata (object defaultValue, System.Windows.PropertyChangedCallback propertyChangedCallback, System.Windows.CoerceValueCallback coerceValueCallback);
new System.Windows.FrameworkPropertyMetadata : obj * System.Windows.PropertyChangedCallback * System.Windows.CoerceValueCallback -> System.Windows.FrameworkPropertyMetadata
Public Sub New (defaultValue As Object, propertyChangedCallback As PropertyChangedCallback, coerceValueCallback As CoerceValueCallback)

Parametri

defaultValue
Object

Valore predefinito della proprietà di dipendenza, in genere fornito come tipo specifico.

propertyChangedCallback
PropertyChangedCallback

Un riferimento ad un'implementazione del gestore che il sistema di proprietà chiamerà ogni volta che il valore effettivo della proprietà si modifica.

coerceValueCallback
CoerceValueCallback

Un riferimento ad un'implementazione del gestore che sarà richiesto ogni qualvolta il sistema di proprietà chiamerà CoerceValue(DependencyProperty) per questa proprietà di dipendenza.

Eccezioni

defaultValue è impostato su UnsetValue.

Esempio

Nell'esempio seguente viene chiamata la firma del costruttore:

static FrameworkPropertyMetadata fpm;
fpm = new FrameworkPropertyMetadata(
    Double.NaN,
    new PropertyChangedCallback(OnCurrentReadingChanged),
    new CoerceValueCallback(CoerceCurrentReading)
);

Commenti

Il tipo del valore specificato per defaultValue deve corrispondere o essere correlato al tipo specificato nella registrazione originale della proprietà di dipendenza a cui verranno applicati questi metadati. Non corrispondenze tra il tipo di valore predefinito dei metadati e il tipo della proprietà di dipendenza che viene applicata per può essere difficile eseguire il debug, perché la mancata corrispondenza non è rilevabile durante la compilazione. Il sistema delle proprietà non valuta il valore effettivo di una proprietà fino a quando non viene eseguito il tempo di esecuzione, pertanto il risultato di un tipo di valore/tipo di proprietà predefinito non corrisponde a un errore di runtime.

Il valore UnsetValue ha un significato speciale nel sistema delle proprietà e non può essere usato come valore predefinito della proprietà di dipendenza.

Vedi anche

Si applica a

FrameworkPropertyMetadata(Object, FrameworkPropertyMetadataOptions, PropertyChangedCallback, CoerceValueCallback)

Inizializza una nuova istanza della classe FrameworkPropertyMetadata con il valore fornito predefinito e le opzioni dei metadati a livello di framework, e i callback specificati.

public:
 FrameworkPropertyMetadata(System::Object ^ defaultValue, System::Windows::FrameworkPropertyMetadataOptions flags, System::Windows::PropertyChangedCallback ^ propertyChangedCallback, System::Windows::CoerceValueCallback ^ coerceValueCallback);
public FrameworkPropertyMetadata (object defaultValue, System.Windows.FrameworkPropertyMetadataOptions flags, System.Windows.PropertyChangedCallback propertyChangedCallback, System.Windows.CoerceValueCallback coerceValueCallback);
new System.Windows.FrameworkPropertyMetadata : obj * System.Windows.FrameworkPropertyMetadataOptions * System.Windows.PropertyChangedCallback * System.Windows.CoerceValueCallback -> System.Windows.FrameworkPropertyMetadata
Public Sub New (defaultValue As Object, flags As FrameworkPropertyMetadataOptions, propertyChangedCallback As PropertyChangedCallback, coerceValueCallback As CoerceValueCallback)

Parametri

defaultValue
Object

Valore predefinito della proprietà di dipendenza, in genere fornito come tipo specifico.

flags
FrameworkPropertyMetadataOptions

Flag dell’opzione dei metadati (una combinazione dei valori FrameworkPropertyMetadataOptions ). Queste opzioni specificano le caratteristiche della proprietà di dipendenza che interagiscono con sistemi come ad esempio layout o associazione dati.

propertyChangedCallback
PropertyChangedCallback

Un riferimento ad un'implementazione del gestore che il sistema di proprietà chiamerà ogni volta che il valore effettivo della proprietà si modifica.

coerceValueCallback
CoerceValueCallback

Un riferimento ad un'implementazione del gestore che sarà richiesto ogni qualvolta il sistema di proprietà eseguirà chiamate CoerceValue(DependencyProperty) a questa proprietà.

Eccezioni

defaultValue è impostato su UnsetValue.

Esempio

Nell'esempio seguente viene chiamata la firma del costruttore:

static FrameworkPropertyMetadata fpm;
fpm = new FrameworkPropertyMetadata(
    Double.NaN,
    (FrameworkPropertyMetadataOptions.AffectsRender |
      FrameworkPropertyMetadataOptions.BindsTwoWayByDefault),
    new PropertyChangedCallback(OnCurrentReadingChanged),
    new CoerceValueCallback(CoerceCurrentReading)
);

Commenti

Il tipo del valore specificato per defaultValue deve corrispondere o essere correlato al tipo specificato nella registrazione originale della proprietà di dipendenza a cui verranno applicati questi metadati. Non corrispondenze tra il tipo di valore predefinito dei metadati e il tipo della proprietà di dipendenza che viene applicata per può essere difficile eseguire il debug, perché la mancata corrispondenza non è rilevabile durante la compilazione. Il sistema delle proprietà non valuta il valore effettivo di una proprietà fino a quando non viene eseguito il tempo di esecuzione, pertanto il risultato di un tipo di valore/tipo di proprietà predefinito non corrisponde a un errore di runtime.

Il valore UnsetValue ha un significato speciale nel sistema delle proprietà e non può essere usato come valore predefinito della proprietà di dipendenza.

I valori contrassegnati come flag impostati nel flags parametro impostano il valore booleano delle FrameworkPropertyMetadata proprietà che corrispondono FrameworkPropertyMetadataOptions al nome del flag su true. È comunque possibile modificare i valori delle proprietà nei metadati, purché i metadati non siano ancora stati applicati a un'operazione specifica del sistema di proprietà.

Vedi anche

Si applica a

FrameworkPropertyMetadata(Object, FrameworkPropertyMetadataOptions, PropertyChangedCallback, CoerceValueCallback, Boolean)

Inizializza una nuova istanza della classe FrameworkPropertyMetadata con il valore fornito predefinito ed opzioni di metadati di framework, callback specificati ed un Booleano che può essere utilizzato per impedire l’animazione della proprietà.

public:
 FrameworkPropertyMetadata(System::Object ^ defaultValue, System::Windows::FrameworkPropertyMetadataOptions flags, System::Windows::PropertyChangedCallback ^ propertyChangedCallback, System::Windows::CoerceValueCallback ^ coerceValueCallback, bool isAnimationProhibited);
public FrameworkPropertyMetadata (object defaultValue, System.Windows.FrameworkPropertyMetadataOptions flags, System.Windows.PropertyChangedCallback propertyChangedCallback, System.Windows.CoerceValueCallback coerceValueCallback, bool isAnimationProhibited);
new System.Windows.FrameworkPropertyMetadata : obj * System.Windows.FrameworkPropertyMetadataOptions * System.Windows.PropertyChangedCallback * System.Windows.CoerceValueCallback * bool -> System.Windows.FrameworkPropertyMetadata
Public Sub New (defaultValue As Object, flags As FrameworkPropertyMetadataOptions, propertyChangedCallback As PropertyChangedCallback, coerceValueCallback As CoerceValueCallback, isAnimationProhibited As Boolean)

Parametri

defaultValue
Object

Valore predefinito della proprietà di dipendenza, in genere fornito come tipo specifico.

flags
FrameworkPropertyMetadataOptions

Flag dell’opzione dei metadati (una combinazione dei valori FrameworkPropertyMetadataOptions ). Queste opzioni specificano le caratteristiche della proprietà di dipendenza che interagiscono con sistemi come ad esempio layout o associazione dati.

propertyChangedCallback
PropertyChangedCallback

Un riferimento ad un'implementazione del gestore che il sistema di proprietà chiamerà ogni volta che il valore effettivo della proprietà si modifica.

coerceValueCallback
CoerceValueCallback

Un riferimento ad un'implementazione del gestore che sarà richiesto ogni qualvolta il sistema di proprietà eseguirà una chiamata CoerceValue(DependencyProperty) su questa proprietà di dipendenza.

isAnimationProhibited
Boolean

true per impedire che il sistema di proprietà aggiunga un’animazione alla proprietà alla quale questi metadati sono applicati. Tali proprietà genereranno un'eccezione in fase di esecuzione di origine dal sistema di proprietà se si tenta di aggiungere animazioni. false per consentire l'animazione della proprietà. Il valore predefinito è false.

Eccezioni

defaultValue è impostato su UnsetValue.

Esempio

L'esempio seguente chiama questa firma del costruttore:

static FrameworkPropertyMetadata fpm;
fpm = new FrameworkPropertyMetadata(
    Double.NaN,
    (FrameworkPropertyMetadataOptions.AffectsRender |
      FrameworkPropertyMetadataOptions.BindsTwoWayByDefault),
    new PropertyChangedCallback(OnCurrentReadingChanged),
    new CoerceValueCallback(CoerceCurrentReading),
    true //Animation prohibited
);

Commenti

Il tipo del valore specificato per defaultValue deve corrispondere o essere correlato al tipo specificato nella registrazione originale della proprietà di dipendenza a cui verranno applicati i metadati. La mancata corrispondenza tra il tipo di valore predefinito dei metadati e il tipo della proprietà di dipendenza a cui viene applicata può essere difficile eseguire il debug, perché la mancata corrispondenza non è rilevabile durante la compilazione. Il sistema di proprietà non valuta il valore effettivo di una proprietà fino alla fase di esecuzione, pertanto il risultato di un tipo di valore predefinito/tipo di proprietà non corrisponde a un errore di run-time.

Il valore UnsetValue ha un significato speciale nel sistema di proprietà e non può essere usato come valore predefinito della proprietà di dipendenza.

Il isAnimationProhibited parametro imposta il valore iniziale della IsAnimationProhibited proprietà dichiarata dalla classe base UIPropertyMetadata immediata.

I valori contrassegnati come flag impostati nel flags parametro imposteranno il valore booleano delle FrameworkPropertyMetadata proprietà che corrispondono FrameworkPropertyMetadataOptions al nome del flag su true. È comunque possibile modificare i valori delle proprietà nei metadati, purché i metadati non siano ancora stati applicati a un'operazione specifica del sistema di proprietà.

Vedi anche

Si applica a

FrameworkPropertyMetadata(Object, FrameworkPropertyMetadataOptions, PropertyChangedCallback, CoerceValueCallback, Boolean, UpdateSourceTrigger)

Inizializza una nuova istanza della classe FrameworkPropertyMetadata con il valore fornito predefinito ed opzioni di metadati di framework, callback specificati ed un Booleano che può essere utilizzato per impedire l’animazione della proprietà, e un'impostazione predefinita di trigger di aggiornamento di associazione dati.

public:
 FrameworkPropertyMetadata(System::Object ^ defaultValue, System::Windows::FrameworkPropertyMetadataOptions flags, System::Windows::PropertyChangedCallback ^ propertyChangedCallback, System::Windows::CoerceValueCallback ^ coerceValueCallback, bool isAnimationProhibited, System::Windows::Data::UpdateSourceTrigger defaultUpdateSourceTrigger);
public FrameworkPropertyMetadata (object defaultValue, System.Windows.FrameworkPropertyMetadataOptions flags, System.Windows.PropertyChangedCallback propertyChangedCallback, System.Windows.CoerceValueCallback coerceValueCallback, bool isAnimationProhibited, System.Windows.Data.UpdateSourceTrigger defaultUpdateSourceTrigger);
new System.Windows.FrameworkPropertyMetadata : obj * System.Windows.FrameworkPropertyMetadataOptions * System.Windows.PropertyChangedCallback * System.Windows.CoerceValueCallback * bool * System.Windows.Data.UpdateSourceTrigger -> System.Windows.FrameworkPropertyMetadata
Public Sub New (defaultValue As Object, flags As FrameworkPropertyMetadataOptions, propertyChangedCallback As PropertyChangedCallback, coerceValueCallback As CoerceValueCallback, isAnimationProhibited As Boolean, defaultUpdateSourceTrigger As UpdateSourceTrigger)

Parametri

defaultValue
Object

Valore predefinito della proprietà di dipendenza, in genere fornito come tipo specifico.

flags
FrameworkPropertyMetadataOptions

Flag dell’opzione dei metadati (una combinazione dei valori FrameworkPropertyMetadataOptions ). Queste opzioni specificano le caratteristiche della proprietà di dipendenza che interagiscono con sistemi come ad esempio layout o associazione dati.

propertyChangedCallback
PropertyChangedCallback

Un riferimento ad un'implementazione del gestore che il sistema di proprietà chiamerà ogni volta che il valore effettivo della proprietà si modifica.

coerceValueCallback
CoerceValueCallback

Un riferimento ad un'implementazione del gestore che sarà richiesto ogni qualvolta il sistema di proprietà eseguirà chiamate CoerceValue(DependencyProperty) a questa proprietà.

isAnimationProhibited
Boolean

true per impedire che il sistema di proprietà aggiunga un’animazione alla proprietà alla quale questi metadati sono applicati. Tali proprietà genereranno un'eccezione in fase di esecuzione di origine dal sistema di proprietà se si tenta di aggiungere animazioni. Il valore predefinito è false.

defaultUpdateSourceTrigger
UpdateSourceTrigger

UpdateSourceTrigger da utilizzare quando le associazioni per questa proprietà sono applicate ed hanno UpdateSourceTrigger impostato a Default.

Eccezioni

defaultValue è impostato su UnsetValue.

Esempio

static FrameworkPropertyMetadata fpm;
fpm = new FrameworkPropertyMetadata(
    Double.NaN,
    (FrameworkPropertyMetadataOptions.AffectsRender |
      FrameworkPropertyMetadataOptions.BindsTwoWayByDefault),
    new PropertyChangedCallback(OnCurrentReadingChanged),
    new CoerceValueCallback(CoerceCurrentReading),
    true //Animation prohibited
    , UpdateSourceTrigger.PropertyChanged
);

Commenti

Il tipo del valore specificato per defaultValue deve corrispondere o essere correlato al tipo specificato nella registrazione originale della proprietà di dipendenza a cui verranno applicati i metadati. La mancata corrispondenza tra il tipo di valore predefinito dei metadati e il tipo della proprietà di dipendenza a cui viene applicata può essere difficile eseguire il debug, perché la mancata corrispondenza non è rilevabile durante la compilazione. Il sistema di proprietà non valuta il valore effettivo di una proprietà fino alla fase di esecuzione, pertanto il risultato di un tipo di valore predefinito/tipo di proprietà non corrisponde a un errore di run-time.

Il valore UnsetValue ha un significato speciale nel sistema di proprietà e non può essere usato come valore predefinito della proprietà di dipendenza.

Il isAnimationProhibited parametro imposta il valore iniziale della IsAnimationProhibited proprietà dichiarata dalla classe base UIPropertyMetadata immediata.

Per altre informazioni sul comportamento dell'origine degli aggiornamenti per le associazioni, vedere Panoramica del data binding.

I valori contrassegnati come flag impostati nel flags parametro imposteranno il valore booleano delle FrameworkPropertyMetadata proprietà che corrispondono FrameworkPropertyMetadataOptions al nome del flag su true. È comunque possibile modificare i valori delle proprietà nei metadati, purché i metadati non siano ancora stati applicati a un'operazione specifica del sistema di proprietà.

Vedi anche

Si applica a