DependencyObject.OnPropertyChanged(DependencyPropertyChangedEventArgs) Metodo

Definizione

Richiamato ogni volta che viene aggiornato il valore effettivo di qualsiasi proprietà di dipendenza in DependencyObject. La proprietà di dipendenza specifica modificata viene indicata nei dati dell'evento.

protected:
 virtual void OnPropertyChanged(System::Windows::DependencyPropertyChangedEventArgs e);
protected virtual void OnPropertyChanged (System.Windows.DependencyPropertyChangedEventArgs e);
abstract member OnPropertyChanged : System.Windows.DependencyPropertyChangedEventArgs -> unit
override this.OnPropertyChanged : System.Windows.DependencyPropertyChangedEventArgs -> unit
Protected Overridable Sub OnPropertyChanged (e As DependencyPropertyChangedEventArgs)

Parametri

e
DependencyPropertyChangedEventArgs

Dati dell'evento che conterranno l'identificatore della proprietà di dipendenza di interesse, i metadati della proprietà per il tipo e i valori precedenti e nuovi.

Commenti

Questo metodo non è destinato a rilevare in genere singole modifiche delle proprietà o eseguire invalidazioni di proprietà in base a caso. OnPropertyChanged è invece destinato alle modifiche del modello generale di invalidazione, se alcune informazioni sono note sulle classificazioni wide delle proprietà. Ad esempio, le modifiche in un Freezable oggetto potrebbero essere modificate nei tipi di valore di Freezableo potrebbero essere sotto proprietà, in cui le modifiche si trovano all'interno di altri Freezable riferimenti. L'implementazione Freezable dell'override di OnPropertyChanged usa informazioni interne per determinare se le proprietà sono proprietà secondarie e fornisce una logica di classe di base appropriata per entrambi i casi.

OnPropertyChanged viene potenzialmente richiamato molte volte durante la vita di un oggetto. Pertanto, è possibile ottenere prestazioni migliori per il sistema di proprietà generale se si esegue l'override dei metadati di proprietà specifiche e quindi collegare CoerceValueCallback o PropertyChangedCallback funzioni per le singole proprietà. Tuttavia, si userebbe questo metodo se un DependencyObject include un numero significativo di proprietà di dipendenza correlate a valori o se include logica, ad esempio il comportamento di rendering che deve essere eseguito di nuovo per diversi casi correlati di invalidazioni delle proprietà.

Note per gli eredi

Chiamare sempre l'implementazione di base. In caso contrario, l'intera proprietà WPF verrà disabilitata in modo significativo, causando la segnalazione di valori non corretti.

Si applica a

Vedi anche