Partilhar via


DependencyObject.OnPropertyChanged(DependencyPropertyChangedEventArgs) Método

Definição

Invocado sempre que o valor efetivo de qualquer propriedade de dependência nesse DependencyObject for atualizado. A propriedade de dependência específica que mudou é relatada os dados do 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)

Parâmetros

e
DependencyPropertyChangedEventArgs

Os dados do evento conterão o identificador de propriedade de dependência de interesse, os metadados para o tipo de propriedade e valores novos e antigos.

Comentários

Esse método não se destina a detectar geralmente alterações de propriedade individuais ou executar invalidações de propriedades por caso. OnPropertyChanged em vez disso, destina-se a modificações do padrão de invalidação geral, se determinadas informações forem conhecidas sobre classificações amplas de propriedades. Por exemplo, as alterações em um Freezable podem ser alterações nos tipos de valor do Freezableou podem ser subpropriedades, em que as alterações estão dentro de outras Freezable referências. A Freezable implementação de substituição de OnPropertyChanged usa informações internas para determinar se as propriedades são subpropriedades e fornece a lógica de classe base apropriada para ambos os casos.

OnPropertyChanged é potencialmente invocado muitas vezes durante a vida útil de um objeto. Portanto, você poderá obter um melhor desempenho para o sistema de propriedades geral se substituir os metadados de propriedades específicas e, em seguida, anexar CoerceValueCallback ou PropertyChangedCallback funções para propriedades individuais. No entanto, você usará esse método se um incluir um DependencyObject número significativo de propriedades de dependência inter-relacionadas a valor ou se ele incluir lógica como comportamento de renderização que deve ser executado novamente para vários casos relacionados de invalidações de propriedade.

Notas aos Herdeiros

Sempre chame a implementação base. A falha ao fazer isso desabilitará significativamente todo o sistema de propriedades do WPF, fazendo com que valores incorretos sejam relatados.

Aplica-se a

Confira também