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í.
Coerce el valor de la propiedad de dependencia especificada. Esto se logra invocando cualquier CoerceValueCallback función especificada en metadatos de propiedad para la propiedad de dependencia tal como existe en la llamada DependencyObjecta .
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 especificado dp o su valor no eran válidos o no existen.
Ejemplos
En el ejemplo siguiente se llama a CoerceValue 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 la llamada a CoerceValue, también se invoca internamente el CoerceValueCallback para una propiedad de dependencia siempre que el sistema de propiedades de WPF vuelva a evaluar el valor de la propiedad de dependencia.
Cuando se invoca el CoerceValue método , se invoca en última instancia 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 es dentro del control de clases o las devoluciones de llamada de cambio de propiedad 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 propiedades de dependencia.