Questo articolo è stato tradotto automaticamente. Per visualizzare l'articolo in inglese, selezionare la casella di controllo Inglese. È possibile anche visualizzare il testo inglese in una finestra popup posizionando il puntatore del mouse sopra il testo.
Traduzione
Inglese

Delegato ValidateValueCallback

 

Data di pubblicazione: ottobre 2016

Rappresenta un metodo usato come callback che convalida il valore effettivo di una proprietà di dipendenza.

Spazio dei nomi:   System.Windows
Assembly:  WindowsBase (in WindowsBase.dll)

public delegate bool ValidateValueCallback(
	object value
)

Parametri

value
Type: System.Object

Valore da convalidare.

Valore restituito

Type: System.Boolean

true se il valore è stato convalidato. false se il valore inviato non è valido.

I callback basati su questo delegato vengono utilizzati da alcune firme di DependencyProperty.Register e metodi correlati, ad esempio RegisterAttached e gli equivalenti di sola lettura. È necessario utilizzare firme che accettano il validateValueCallback parametro se si desidera che la convalida specifica del valore della proprietà ogni volta che viene impostata la validità. È quindi necessario implementare questo callback in modo che esegue la convalida effettiva del valore proposto. Il callback deve restituire true se è valido, il valore inviato al metodo di callback e false in caso contrario. Oggetto false valore genererà un'eccezione nella parte specifica del sistema di proprietà in cui è stata tentata l'insieme di proprietà non valido, pertanto l'applicazione deve essere preparata a gestire queste eccezioni.

I callback di convalida vengono archiviati su identificatori di proprietà di dipendenza, piuttosto che i metadati di proprietà di dipendenza. Il callback di convalida non ha accesso a un'istanza specifica di un DependencyObject in cui la proprietà è impostata e può influire solo sui valori accettati per la proprietà in generale. Se è necessario un callback che è possibile modificare i valori di proprietà in base a un'istanza specifica, utilizzare una combinazione di un CoerceValueCallback e PropertyChangedCallback callback applicato ai metadati della proprietà della proprietà. È inoltre possibile applicare questi callback per le proprietà correlate che possono influire su valore della proprietà. Per informazioni dettagliate, vedere callback delle proprietà di dipendenza e convalida.

L'esempio seguente include un'implementazione di questo callback per convalidare un intervallo di valori per una proprietà di dipendenza personalizzate. In questo caso il valore della proprietà prevede un'enumerazione e la convalida assicura che un membro di enumerazione che restituisce il valore fornito.

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);

}

.NET Framework
Disponibile da 3.0
Torna all'inizio
Mostra: