ValidationRule.Validate Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Esegue controlli di convalida su un valore.
Overload
Validate(Object, CultureInfo) |
In caso di override in una classe derivata, esegue i controlli di convalida su un valore. |
Validate(Object, CultureInfo, BindingExpressionBase) |
Esegue controlli di convalida su un valore. |
Validate(Object, CultureInfo, BindingGroup) |
Esegue controlli di convalida su un valore. |
Validate(Object, CultureInfo)
In caso di override in una classe derivata, esegue i controlli di convalida su un valore.
public:
abstract System::Windows::Controls::ValidationResult ^ Validate(System::Object ^ value, System::Globalization::CultureInfo ^ cultureInfo);
public abstract System.Windows.Controls.ValidationResult Validate (object value, System.Globalization.CultureInfo cultureInfo);
abstract member Validate : obj * System.Globalization.CultureInfo -> System.Windows.Controls.ValidationResult
Public MustOverride Function Validate (value As Object, cultureInfo As CultureInfo) As ValidationResult
Parametri
- value
- Object
Valore dalla destinazione del binding da controllare.
- cultureInfo
- CultureInfo
Impostazioni cultura da usare nella regola.
Restituisce
Un oggetto ValidationResult.
Esempio
Nell'esempio seguente viene illustrato come implementare una regola di convalida. Nell'esempio seguente il valore di input non è valido se contiene caratteri non numerici o se è esterno ai limiti inferiori e superiori. Se il valore di input non è valido, la ErrorContent proprietà viene impostata sul messaggio di errore appropriato e la IsValid proprietà è impostata su false
.
Per l'esempio completo, vedere Procedura: Implementare la convalida dell'associazione.
public class AgeRangeRule : ValidationRule
{
public int Min { get; set; }
public int Max { get; set; }
public AgeRangeRule()
{
}
public override ValidationResult Validate(object value, CultureInfo cultureInfo)
{
int age = 0;
try
{
if (((string)value).Length > 0)
age = Int32.Parse((String)value);
}
catch (Exception e)
{
return new ValidationResult(false, $"Illegal characters or {e.Message}");
}
if ((age < Min) || (age > Max))
{
return new ValidationResult(false,
$"Please enter an age in the range: {Min}-{Max}.");
}
return ValidationResult.ValidResult;
}
}
Commenti
È necessario implementare questo metodo quando si crea una sottoclasse della ValidationRule classe per creare una regola di convalida personalizzata.
Ogni volta che il motore di data binding trasferisce un valore dalla proprietà di destinazione del binding (dall'input dell'utente) alla proprietà dell'origine di associazione (i dati sottostanti), verifica se sono ValidationRules definiti per tale associazione. Se ValidationRules sono definiti per l'associazione, il motore chiama il Validate metodo su ognuno ValidationRule fino a quando uno di essi non rileva un errore o fino a quando non vengono passati tutti.
Per informazioni dettagliate sulla convalida dei dati, vedere Panoramica del data binding.
Vedi anche
Si applica a
Validate(Object, CultureInfo, BindingExpressionBase)
Esegue controlli di convalida su un valore.
public:
virtual System::Windows::Controls::ValidationResult ^ Validate(System::Object ^ value, System::Globalization::CultureInfo ^ cultureInfo, System::Windows::Data::BindingExpressionBase ^ owner);
public virtual System.Windows.Controls.ValidationResult Validate (object value, System.Globalization.CultureInfo cultureInfo, System.Windows.Data.BindingExpressionBase owner);
abstract member Validate : obj * System.Globalization.CultureInfo * System.Windows.Data.BindingExpressionBase -> System.Windows.Controls.ValidationResult
override this.Validate : obj * System.Globalization.CultureInfo * System.Windows.Data.BindingExpressionBase -> System.Windows.Controls.ValidationResult
Public Overridable Function Validate (value As Object, cultureInfo As CultureInfo, owner As BindingExpressionBase) As ValidationResult
Parametri
- value
- Object
Valore dalla destinazione del binding da controllare.
- cultureInfo
- CultureInfo
Impostazioni cultura da usare nella regola.
- owner
- BindingExpressionBase
L'espressione di associazione che utilizza la regola di convalida.
Restituisce
Un oggetto ValidationResult.
Si applica a
Validate(Object, CultureInfo, BindingGroup)
Esegue controlli di convalida su un valore.
public:
virtual System::Windows::Controls::ValidationResult ^ Validate(System::Object ^ value, System::Globalization::CultureInfo ^ cultureInfo, System::Windows::Data::BindingGroup ^ owner);
public virtual System.Windows.Controls.ValidationResult Validate (object value, System.Globalization.CultureInfo cultureInfo, System.Windows.Data.BindingGroup owner);
abstract member Validate : obj * System.Globalization.CultureInfo * System.Windows.Data.BindingGroup -> System.Windows.Controls.ValidationResult
override this.Validate : obj * System.Globalization.CultureInfo * System.Windows.Data.BindingGroup -> System.Windows.Controls.ValidationResult
Public Overridable Function Validate (value As Object, cultureInfo As CultureInfo, owner As BindingGroup) As ValidationResult
Parametri
- value
- Object
Valore dalla destinazione del binding da controllare.
- cultureInfo
- CultureInfo
Impostazioni cultura da usare nella regola.
- owner
- BindingGroup
Il gruppo di associazione che utilizza la regola di convalida.
Restituisce
Un oggetto ValidationResult.