ValidateValueCallback Delegált
Definíció
Fontos
Egyes információk olyan, kiadás előtti termékekre vonatkoznak, amelyek a kiadásig még jelentősen módosulhatnak. A Microsoft nem vállal kifejezett vagy törvényi garanciát az itt megjelenő információért.
Visszahívásként használt metódust jelöl, amely ellenőrzi egy függőségi tulajdonság tényleges értékét.
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
Paraméterek
- value
- Object
Az érvényesítendő érték.
Visszatérési érték
true ha az érték érvényesítése megtörtént; false ha a beküldött érték érvénytelen volt.
Példák
Az alábbi példa a visszahívás implementálását tartalmazza egy egyéni függőségi tulajdonság értéktartományának ellenőrzéséhez. Ebben az esetben a tulajdonság értéke enumerálást vár, és az ellenőrzés biztosítja, hogy a megadott érték kiértékelése az enumerálás egy tagjára történik.
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
Megjegyzések
A meghatalmazotton alapuló visszahívásokat bizonyos aláírások és kapcsolódó metódusok DependencyProperty.Register használják, például RegisterAttached és írásvédett egyenértékűek. Olyan aláírásokat kell használnia, amelyek a validateValueCallback paramétert használják, ha a tulajdonságértéket minden alkalommal ellenőrizni szeretné, amikor a tulajdonság érvényessége be van állítva. Ezt a visszahívást ezután úgy kell implementálnia, hogy az végrehajtsa a javasolt érték tényleges ellenőrzését. A visszahívásnak vissza kell térnie true , ha a visszahívásnak elküldött érték érvényes, és false ellenkező esetben. Egy false érték kivételt fog eredményezni a tulajdonságrendszer azon részében, ahol az érvénytelen tulajdonságkészletet megkísérelték, ezért az alkalmazásnak készen kell állnia a kivételek kezelésére.
Az érvényesítési visszahívások a függőségi tulajdonság metaadatai helyett függőségi tulajdonságazonosítókon vannak tárolva. Az érvényesítési visszahívás nem rendelkezik hozzáféréssel egy DependencyObject adott példányhoz, amelyen a tulajdonság be van állítva, és csak a tulajdonság általánosan elfogadott értékeit befolyásolhatja. Ha olyan visszahívásra van szüksége, amely egy adott példány alapján módosíthatja a tulajdonságértékeket, a tulajdonság metaadataira alkalmazott visszahívások és CoerceValueCallback visszahívások kombinációját PropertyChangedCallback kell használnia. Ezeket a visszahívásokat olyan kapcsolódó tulajdonságokra is alkalmazhatja, amelyek befolyásolhatják a tulajdonság értékét. További részletekért lásd: Függőségi tulajdonság visszahívásai és érvényesítése.
Bővítő metódusok
| Name | Description |
|---|---|
| GetMethodInfo(Delegate) |
Lekéri a megadott meghatalmazott által képviselt metódust képviselő objektumot. |