DependencyObject.CoerceValue(DependencyProperty) Método

Definição

Coage o valor da propriedade de dependência especificada. Isto é conseguido invocando qualquer CoerceValueCallback função especificada nos metadados da propriedade para a propriedade de dependência tal como existe na chamada DependencyObject.

public:
 void CoerceValue(System::Windows::DependencyProperty ^ dp);
public void CoerceValue(System.Windows.DependencyProperty dp);
member this.CoerceValue : System.Windows.DependencyProperty -> unit
Public Sub CoerceValue (dp As DependencyProperty)

Parâmetros

dp
DependencyProperty

O identificador para a propriedade de dependência a coagir.

Exceções

O especificado dp ou o seu valor eram inválidos ou não existem.

Exemplos

O exemplo seguinte chama CoerceValue dentro de uma PropertyChangedCallback implementação que é usada como para PropertyChangedCallback diferentes propriedades de dependência na mesma classe. Este é um padrão comum para introduzir verdadeiras dependências de valor entre propriedades de dependência.

private static void OnCurrentReadingChanged(DependencyObject d, DependencyPropertyChangedEventArgs e)
{
  d.CoerceValue(MinReadingProperty);
  d.CoerceValue(MaxReadingProperty);
}
Private Shared Sub OnCurrentReadingChanged(ByVal d As DependencyObject, ByVal e As DependencyPropertyChangedEventArgs)
    d.CoerceValue(MinReadingProperty)
    d.CoerceValue(MaxReadingProperty)
End Sub

Observações

Para além de ser explicitamente invocado através da chamada de CoerceValue, o CoerceValueCallback para uma propriedade de dependência é também invocado internamente sempre que o valor da propriedade de dependência está a ser reavaliado pelo sistema de propriedades WPF.

Quando invoca o CoerceValue método, está, em última análise, a invocar o callback do valor de coerção para a propriedade que especifica. Normalmente, só invocará CoerceValue se souber que existe um callback de valor de coerção, e se souber os critérios do callback para coerção.

O cenário mais comum para chamar CoerceValue é dentro de callbacks de gestão de classes ou alteração de propriedade de propriedades relacionadas que influenciam os valores uns dos outros de forma dependente. Para mais informações, consulte Callbacks e Validação de Propriedades de Dependência.

Aplica-se a

Ver também