DependencyObject.CoerceValue(DependencyProperty) DependencyObject.CoerceValue(DependencyProperty) DependencyObject.CoerceValue(DependencyProperty) DependencyObject.CoerceValue(DependencyProperty) Method

Definición

Convierte el valor de la propiedad de dependencia especificada.Coerces the value of the specified dependency property. Esto se logra invocando cualquier función CoerceValueCallback especificada en los metadatos de la propiedad de dependencia tal como existe en la clase DependencyObject que llama.This is accomplished by invoking any CoerceValueCallback function specified in property metadata for the dependency property as it exists on the calling 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 DependencyProperty DependencyProperty DependencyProperty

Identificador de la propiedad de dependencia que se va a convertir.The identifier for the dependency property to coerce.

Excepciones

El parámetro dp especificado o su valor no eran válidos o no existían.The specified dp or its value were invalid or do not exist.

Ejemplos

En el ejemplo siguiente CoerceValue se llama PropertyChangedCallback a dentro de una implementación de PropertyChangedCallback que se utiliza como para una propiedad de dependencia diferente en la misma clase.The following example calls CoerceValue within a PropertyChangedCallback implementation that is used as the PropertyChangedCallback for a different dependency properties on the same class. Este es un patrón común para introducir dependencias de valores verdaderos entre las propiedades de dependencia.This is a common pattern for introducing true value dependencies between dependency properties.

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

Comentarios

Además de invocarse explícitamente mediante una llamada CoerceValuea CoerceValueCallback , el de una propiedad de dependencia también se invoca internamente siempre que el WPFWPF sistema de propiedades vuelve a evaluar el valor de la propiedad de dependencia.In addition to being explicitly invoked through calling CoerceValue, the CoerceValueCallback for a dependency property is also invoked internally whenever the dependency property value is being re-evaluated by the WPFWPF property system.

Al invocar el CoerceValue método, en última instancia se invoca la devolución de llamada de valor de coerción para la propiedad que se especifique.When you invoke the CoerceValue method, you are ultimately invoking the coerce value callback for the property that you specify. Normalmente solo se invocará CoerceValue si sabe que existe una devolución de llamada de valor de coerción y si conoce los criterios de la devolución de llamada para la coerción.Typically you will invoke CoerceValue only if you know that a coerce value callback exists, and if you know the callback's criteria for coercion.

El escenario más común para llamar CoerceValue a es el control de clases o las devoluciones de llamada de cambio de propiedad de las propiedades relacionadas que influyen en los valores de la otra de forma dependiente.The most common scenario for calling CoerceValue is within class handling or property change callbacks of related properties that influence each other's values in a dependent way. Para obtener más información, consulte Devoluciones de llamada y validación de las propiedades de dependencia.For more information, see Dependency Property Callbacks and Validation.

Se aplica a

Consulte también: