ValidateValueCallback ValidateValueCallback ValidateValueCallback ValidateValueCallback Delegate

Definition

Stellt eine Methode dar, die als Rückruf verwendet wird, mit dem der effektive Wert einer Abhängigkeitseigenschaft überprüft wird.Represents a method used as a callback that validates the effective value of a dependency property.

public delegate bool ValidateValueCallback(System::Object ^ value);
public delegate bool ValidateValueCallback(object value);
type ValidateValueCallback = delegate of obj -> bool
Public Delegate Function ValidateValueCallback(value As Object) As Boolean 

Parameter

value
Object Object Object Object

Der zu überprüfende Wert.The value to be validated.

Rückgabewert

System.Boolean

true, wenn der Wert überprüft wurde. false, wenn der übermittelte Wert ungültig war.true if the value was validated; false if the submitted value was invalid.

Vererbung
ValidateValueCallbackValidateValueCallbackValidateValueCallbackValidateValueCallback

Beispiele

Das folgende Beispiel schließt eine Implementierung dieses Rückrufs aus, um einen Bereich von Werten für eine benutzerdefinierte Abhängigkeitseigenschaft zu überprüfen.The following example includes an implementation of this callback to validate a range of values for a custom dependency property. In diesem Fall erwartet den Wert der Eigenschaft für eine Enumeration, und die Validierung wird sichergestellt, dass der angegebene Wert ein Member dieser Enumeration ergibt.In this case the property value expects an enumeration, and the validation assures that the provided value evaluates to a member of that enumeration.

private static bool ShirtValidateCallback(object value)
{
	ShirtTypes sh = (ShirtTypes) value;
	return (sh==ShirtTypes.None || sh == ShirtTypes.Bowling || sh == ShirtTypes.Dress || sh == ShirtTypes.Rugby || sh == ShirtTypes.Tee);

}
Private Shared Function ShirtValidateCallback(ByVal value As Object) As Boolean
	Dim sh As ShirtTypes = CType(value, ShirtTypes)
	Return (sh=ShirtTypes.None OrElse sh = ShirtTypes.Bowling OrElse sh = ShirtTypes.Dress OrElse sh = ShirtTypes.Rugby OrElse sh = ShirtTypes.Tee)

End Function

Hinweise

Rückrufe, die basierend auf diesen Delegaten werden verwendet, von bestimmten Signaturen von DependencyProperty.Register und Methoden, wie z. B. verwandte RegisterAttached und nur-Lese Entsprechungen.Callbacks based on this delegate are used by certain signatures of DependencyProperty.Register and related methods, such as RegisterAttached and read-only equivalents. Verwenden Sie Signaturen, die dauern der validateValueCallback -Parameters, wenn Sie spezifische Validierung des Werts der wünschen, die der effektive festgelegt ist.You should use signatures that take the validateValueCallback parameter if you want specific validation of the property value each time that its effective is set. Klicken Sie dann sollten Sie dieser Rückruf implementieren, sodass es die tatsächliche Validierung, der den vorgeschlagenen Wert führt.You should then implement this callback such that it performs the actual validation of the proposed value. Der Rückruf sollte zurückgeben true Wenn der Wert für den Rückruf übermittelte gültig ist und false andernfalls.The callback should return true if the value submitted to the callback is valid, and false otherwise. Ein false Wert verursacht eine Ausnahme aus, in dem Teil des Eigenschaftensystems, in denen die ungültige Eigenschaft festgelegt wurde, damit Ihre Anwendung vorbereitet sein sollte, um diese Ausnahmen zu behandeln.A false value will produce an exception in the specific portion of the property system where the invalid property set was attempted, so your application should be prepared to handle these exceptions.

Überprüfungsrückrufe werden auf die Metadaten für Abhängigkeitseigenschaften, anstatt Abhängigkeiten Eigenschaftsbezeichner gespeichert.Validation callbacks are stored on dependency property identifiers, rather than dependency property metadata. Der Validierungsrückruf hat keinen Zugriff auf eine bestimmte Instanz einer DependencyObject auf dem die Eigenschaft festgelegt und kann nur beeinflussen, welche Werte in der Regel für die Eigenschaft akzeptiert werden.Your validation callback does not have access to a specific instance of a DependencyObject on which the property is set, and can only influence what values are accepted for the property in general. Wenn Sie einen Rückruf, die Eigenschaftswerte, die basierend auf einer bestimmten Instanz ändern können benötigen, verwenden Sie eine Kombination aus einer CoerceValueCallback und PropertyChangedCallback Rückrufe, die auf die Eigenschaftenmetadaten der Eigenschaft angewendet.If you need a callback that can change property values based on a specific instance, you should use a combination of a CoerceValueCallback and PropertyChangedCallback callbacks as applied to the property metadata of your property. Sie können auch diese Rückrufe auf verwandte Eigenschaften anwenden, die den Wert der Eigenschaft auswirken, sollten.You might also apply these callbacks to related properties that should influence your property's value. Weitere Informationen finden Sie unter Abhängigkeitsrückrufe und Validierung von.For details, see Dependency Property Callbacks and Validation.

Extension Methods

GetMethodInfo(Delegate) GetMethodInfo(Delegate) GetMethodInfo(Delegate) GetMethodInfo(Delegate)

Ruft ein Objekt, das die durch den angegebenen Delegaten dargestellte Methode darstellt.Gets an object that represents the method represented by the specified delegate.

Gilt für:

Siehe auch