DependencyObject.OnPropertyChanged(DependencyPropertyChangedEventArgs) Metodo

Definizione

Richiamato ogni volta che viene aggiornato il valore effettivo di qualsiasi proprietà di dipendenza in DependencyObject.Invoked whenever the effective value of any dependency property on this DependencyObject has been updated. La proprietà di dipendenza specifica modificata viene indicata nei dati dell'evento.The specific dependency property that changed is reported in the event data.

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.Event data that will contain the dependency property identifier of interest, the property metadata for the type, and old and new values.

Commenti

Questo metodo non è destinato a rilevare generalmente le singole modifiche delle proprietà o a eseguire invalidamenti delle proprietà per ogni singolo caso.This method is not intended to generally detect individual property changes or perform invalidations of properties on a per-case basis. OnPropertyChanged è invece destinato alle modifiche del modello di invalidamento generale, se determinate informazioni sono note sulle classificazioni estese delle proprietà.OnPropertyChanged is instead intended for modifications of the general invalidation pattern, if certain information is known about wide classifications of properties. È ad esempio possibile che le modifiche apportate a un Freezable siano modifiche nei tipi di valore di Freezable o che siano sottoproprietà, in cui le modifiche si trovano all'interno di altri riferimenti Freezable.For example, changes in a Freezable might be changes in the value types of the Freezable, or might be subproperties, where the changes are within other Freezable references. L'implementazione di override Freezable di OnPropertyChanged utilizza informazioni interne per determinare se le proprietà sono sottoproprietà e fornisce la logica della classe di base appropriata per entrambi i casi.The Freezable override implementation of OnPropertyChanged uses internal information to determine whether the properties are subproperties, and provides appropriate base class logic for either case.

OnPropertyChanged viene potenzialmente richiamato più volte durante il ciclo di vita di un oggetto.OnPropertyChanged is potentially invoked many times during the life of an object. Pertanto, è possibile ottenere prestazioni migliori per il sistema di proprietà generale se si esegue l'override dei metadati di proprietà specifiche e quindi si alleghino funzioni CoerceValueCallback o PropertyChangedCallback per le singole proprietà.Therefore, you can achieve better performance for the overall property system if you override the metadata of specific properties and then attach CoerceValueCallback or PropertyChangedCallback functions for individual properties. Tuttavia, è possibile utilizzare questo metodo se un DependencyObject include un numero significativo di proprietà di dipendenza correlate al valore o se include una logica quale il comportamento di rendering che deve essere rieseguita per diversi casi correlati di invalidamenti di proprietà.However, you would use this method if a DependencyObject includes a significant number of value-interrelated dependency properties, or if it includes logic such as rendering behavior that must be rerun for several related cases of property invalidations.

Note per gli eredi

Chiamare sempre l'implementazione di base.Always call the base implementation. In caso contrario, l'intero sistema di proprietà WPFWPF verrà disabilitato in modo significativo, causando la segnalazione di valori non corretti.Failure to do this will significantly disable the entire WPFWPF property system, causing incorrect values to be reported.

Si applica a

Vedi anche