ValidateValueCallback Delegat

Definicja

Reprezentuje metodę używaną jako wywołanie zwrotne, która weryfikuje efektywną wartość właściwości zależności.

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 

Parametry

value
Object

Wartość, która ma zostać zweryfikowana.

Wartość zwracana

Boolean

true jeśli wartość została zweryfikowana; false jeśli przesłana wartość była nieprawidłowa.

Przykłady

Poniższy przykład zawiera implementację tego wywołania zwrotnego w celu zweryfikowania zakresu wartości dla niestandardowej właściwości zależności. W takim przypadku wartość właściwości oczekuje wyliczenia, a walidacja zapewnia, że podana wartość daje w wyniku element członkowski tego wyliczenia.

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

Uwagi

Wywołania zwrotne oparte na tym delegacie są używane przez niektóre podpisy i powiązane metody, takie jak RegisterAttached i odpowiedniki DependencyProperty.Register tylko do odczytu. Należy użyć podpisów, które przyjmują parametr , validateValueCallback jeśli chcesz, aby określona walidacja wartości właściwości za każdym razem, gdy jest ustawiona jego skuteczność. Następnie należy zaimplementować to wywołanie zwrotne, tak aby przeprowadzało rzeczywistą walidację proponowanej wartości. Wywołanie zwrotne powinno zostać zwrócone true , jeśli wartość przesłana do wywołania zwrotnego jest prawidłowa i false w inny sposób. Wartość false spowoduje wygenerowanie wyjątku w określonej części systemu właściwości, w której podjęto próbę nieprawidłowego zestawu właściwości, więc aplikacja powinna być przygotowana do obsługi tych wyjątków.

Wywołania zwrotne weryfikacji są przechowywane na identyfikatorach właściwości zależności, a nie metadanych właściwości zależności. Wywołanie zwrotne weryfikacji nie ma dostępu do określonego DependencyObject wystąpienia obiektu, na którym jest ustawiona właściwość, i może wpływać tylko na to, jakie wartości są akceptowane dla właściwości ogólnie. Jeśli potrzebujesz wywołania zwrotnego, które może zmienić wartości właściwości na podstawie określonego wystąpienia, należy użyć kombinacji CoerceValueCallback wywołań zwrotnych i PropertyChangedCallback zastosowanych do metadanych właściwości właściwości. Te wywołania zwrotne można również zastosować do powiązanych właściwości, które powinny mieć wpływ na wartość właściwości. Aby uzyskać szczegółowe informacje, zobacz Wywołania zwrotne właściwości zależności i walidacja.

Metody rozszerzania

GetMethodInfo(Delegate)

Pobiera obiekt reprezentujący metodę reprezentowaną przez określonego delegata.

Dotyczy

Zobacz też