ValidateValueCallback Delegera
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
Representerar en metod som används som motringning som verifierar det effektiva värdet för en beroendeegenskap.
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
Parametrar
- value
- Object
Värdet som ska verifieras.
Returvärde
true om värdet har verifierats. false om det skickade värdet var ogiltigt.
Exempel
I följande exempel ingår en implementering av återanropet för att verifiera ett värdeintervall för en anpassad beroendeegenskap. I det här fallet förväntar sig egenskapsvärdet en uppräkning, och valideringen säkerställer att det angivna värdet utvärderas till en medlem i den uppräkningen.
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
Kommentarer
Återanrop baserade på det här ombudet används av vissa signaturer av DependencyProperty.Register och relaterade metoder, till exempel RegisterAttached och skrivskyddade motsvarigheter. Du bör använda signaturer som tar parametern validateValueCallback om du vill ha specifik validering av egenskapsvärdet varje gång som dess effektiva värde anges. Du bör sedan implementera återanropet så att det utför den faktiska valideringen av det föreslagna värdet. Återanropet ska returneras true om värdet som skickas till återanropet är giltigt och false i annat fall. Ett false värde skapar ett undantag i den specifika delen av egenskapssystemet där den ogiltiga egenskapsuppsättningen försöktes, så ditt program bör vara redo att hantera dessa undantag.
Valideringsåteranrop lagras på beroendeegenskapsidentifierare i stället för metadata för beroendeegenskap. Verifieringsåteranropet har inte åtkomst till en specifik instans av en DependencyObject som egenskapen har angetts för och kan bara påverka vilka värden som accepteras för egenskapen i allmänhet. Om du behöver ett återanrop som kan ändra egenskapsvärden baserat på en viss instans bör du använda en kombination av en CoerceValueCallback och PropertyChangedCallback återanrop som tillämpas på egenskapens metadata för egenskapen. Du kan också använda dessa återanrop till relaterade egenskaper som ska påverka egenskapens värde. Mer information finns i Återanrop och validering av beroendeegenskap.
Tilläggsmetoder
| Name | Description |
|---|---|
| GetMethodInfo(Delegate) |
Hämtar ett objekt som representerar den metod som representeras av det angivna ombudet. |