ValidationRule.Validate Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Provádí kontroly ověření hodnoty.
Přetížení
Validate(Object, CultureInfo) |
Při přepsání v odvozené třídě provádí ověřovací kontroly hodnoty. |
Validate(Object, CultureInfo, BindingExpressionBase) |
Provádí kontroly ověření hodnoty. |
Validate(Object, CultureInfo, BindingGroup) |
Provádí kontroly ověření hodnoty. |
Validate(Object, CultureInfo)
Při přepsání v odvozené třídě provádí ověřovací kontroly hodnoty.
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
Parametry
- value
- Object
Hodnota z cíle vazby, která se má zkontrolovat.
- cultureInfo
- CultureInfo
Jazyková verze, která se má použít v tomto pravidlu.
Návraty
Objekt ValidationResult .
Příklady
Následující příklad ukazuje, jak implementovat ověřovací pravidlo. V následujícím příkladu je vstupní hodnota neplatná, pokud obsahuje nečíselné znaky nebo je mimo dolní a horní mez. Pokud je vstupní hodnota neplatná, ErrorContent vlastnost je nastavena na odpovídající chybovou zprávu a IsValid vlastnost je nastavena na false
.
Úplný příklad najdete v tématu Postupy: Implementace ověřování vazby.
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;
}
}
Poznámky
Tuto metodu ValidationRule je nutné implementovat při vytváření podtřídy třídy, aby bylo možné vytvořit vlastní ověřovací pravidlo.
Pokaždé, když modul datových vazeb přenese hodnotu z cílové vlastnosti vazby (ze vstupu uživatele) do vlastnosti zdroje vazby (podkladová data), zkontroluje, zda jsou pro danou vazbu definovány nějaké ValidationRules . Pokud ValidationRules jsou definovány pro vazbu, modul volá metodu Validate pro každou ValidationRule z nich, dokud jeden z nich nenajde chybu nebo dokud všechny neprojdou.
Podrobné informace o ověření dat najdete v tématu Přehled datových vazeb.
Viz také
Platí pro
Validate(Object, CultureInfo, BindingExpressionBase)
Provádí kontroly ověření hodnoty.
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
Parametry
- value
- Object
Hodnota z cíle vazby, která se má zkontrolovat.
- cultureInfo
- CultureInfo
Jazyková verze, která se má použít v tomto pravidlu.
- owner
- BindingExpressionBase
Výraz vazby, který používá ověřovací pravidlo.
Návraty
Objekt ValidationResult .
Platí pro
Validate(Object, CultureInfo, BindingGroup)
Provádí kontroly ověření hodnoty.
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
Parametry
- value
- Object
Hodnota z cíle vazby, která se má zkontrolovat.
- cultureInfo
- CultureInfo
Jazyková verze, která se má použít v tomto pravidlu.
- owner
- BindingGroup
Skupina vazeb, která používá ověřovací pravidlo.
Návraty
Objekt ValidationResult .