DependencyObject.CoerceValue(DependencyProperty) Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Convierte el valor de la propiedad de dependencia especificada. 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.
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
Identificador de la propiedad de dependencia que se va a convertir.
Excepciones
El parámetro dp
especificado o su valor no eran válidos o no existían.
Ejemplos
En el ejemplo siguiente se llama CoerceValue a dentro de una PropertyChangedCallback implementación que se usa como PropertyChangedCallback para otras propiedades de dependencia en la misma clase. Se trata de un patrón común para introducir dependencias de valores verdaderos entre las propiedades de dependencia.
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 a CoerceValue, también se invoca internamente para CoerceValueCallback una propiedad de dependencia cada vez que el sistema de propiedades de WPF vuelve a evaluar el valor de la propiedad de dependencia.
Al invocar el CoerceValue método, en última instancia se invoca la devolución de llamada del valor de coerce para la propiedad que especifique. Normalmente, solo invocará CoerceValue si sabe que existe una devolución de llamada de valor de coerce y si conoce los criterios de coerción de la devolución de llamada.
El escenario más común para llamar CoerceValue a es dentro de devoluciones de llamada de cambio de propiedad o control de clases de propiedades relacionadas que influyen en los valores de los demás de forma dependiente. Para obtener más información, consulte Devoluciones de llamada y validación de las propiedades de dependencia.