Dieser Artikel wurde manuell übersetzt. Bewegen Sie den Mauszeiger über die Sätze im Artikel, um den Originaltext anzuzeigen. |
Übersetzung
Original
|
ValidationRule-Klasse
Bietet eine Möglichkeit, eine benutzerdefinierte Regel zu erstellen, um die Gültigkeit von Benutzereingaben zu überprüfen.
System.Windows.Controls.ValidationRule
System.Windows.Controls.DataErrorValidationRule
System.Windows.Controls.ExceptionValidationRule
Assembly: PresentationFramework (in PresentationFramework.dll)
Der ValidationRule-Typ macht die folgenden Member verfügbar.
| Name | Beschreibung | |
|---|---|---|
|
ValidationRule() | Initialisiert eine neue Instanz der ValidationRule-Klasse. |
|
ValidationRule(ValidationStep, Boolean) | Initialisiert eine neue Instanz der ValidationRule-Klasse mit dem angegebenen Validierungsschritt und einem Wert, der angibt, ob die Validierungsregel beim Aktualisieren des Ziels ausgeführt wird. |
| Name | Beschreibung | |
|---|---|---|
|
ValidatesOnTargetUpdated | Ruft einen Wert ab, der angibt, ob die Validierungsregel ausgeführt wird, wenn das Ziel der Binding aktualisiert wird, oder legt diesen Wert fest. |
|
ValidationStep | Ruft ab oder legt fest, wann die Validierungsregel ausgeführt wird. |
| Name | Beschreibung | |
|---|---|---|
|
Equals(Object) | Bestimmt, ob das angegebene Object und das aktuelle Object gleich sind. (Von Object geerbt.) |
|
Finalize | Gibt einem Objekt Gelegenheit zu dem Versuch, Ressourcen freizugeben und andere Bereinigungen durchzuführen, bevor es von der automatische Speicherbereinigung freigegeben wird. (Von Object geerbt.) |
|
GetHashCode | Fungiert als Hashfunktion für einen bestimmten Typ. (Von Object geerbt.) |
|
GetType | Ruft den Type der aktuellen Instanz ab. (Von Object geerbt.) |
|
MemberwiseClone | Erstellt eine flache Kopie des aktuellen Object. (Von Object geerbt.) |
|
ToString | Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt. (Von Object geerbt.) |
|
Validate | Führt beim Überschreiben in einer abgeleiteten Klasse Validierungsprüfungen für einen Wert durch. |
Wenn Sie das WPF-Datenbindungsmodell verwenden, können Sie Ihrem Bindungsobjekt ValidationRules zuordnen. Zum Erstellen benutzerdefinierter Regeln erstellen Sie eine Unterklasse dieser Klasse und implementieren anschließend die Validate-Methode. Optional können Sie die integrierte ExceptionValidationRule verwenden, die Ausnahmen abfängt, die während Aktualisierungen von Datenquellen ausgelöst werden, oder die DataErrorValidationRule, die überprüft, ob die IDataErrorInfo-Implementierung des Quellobjekts Fehler ausgelöst hat.
Das Bindungsmodul überprüft jede ValidationRule, die einer Bindung zugeordnet ist, bei jeder Übermittlung eines Eingabewerts, also des Eigenschaftswerts des Bindungsziels, an die Eigenschaft der Bindungsquelle.
Ausführliche Informationen zur Datenvalidierung finden Sie unter Übersicht über Datenbindung.
Informationen zur Überprüfung von Daten, die vom Benutzer in einem Dialogfeld bereitgestellt werden, finden Sie unter Übersicht über Dialogfelder.
Im folgenden Codebeispiel wird die Implementierung einer Validierungsregel veranschaulicht. Der Eingabewert ist ungültig, wenn er nicht numerische Zeichen enthält oder außerhalb der unteren oder oberen Grenze liegt. Wenn der Wert des zurückgegebenen ValidationResult ungültig ist, wird die ErrorContent-Eigenschaft auf eine entsprechende Fehlermeldung und die IsValid-Eigenschaft auf false festgelegt.
Das vollständige Beispiel finden Sie unter Gewusst wie: Implementieren der Bindungsvalidierung.
public class AgeRangeRule : ValidationRule { private int _min; private int _max; public AgeRangeRule() { } public int Min { get { return _min; } set { _min = value; } } public int Max { get { return _max; } set { _max = value; } } 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 + "."); } else { return new ValidationResult(true, null); } } }
Windows 7, Windows Vista SP1 oder höher, Windows XP SP3, Windows Server 2008 (Server Core wird nicht unterstützt), Windows Server 2008 R2 (Server Core wird mit SP1 oder höher unterstützt), Windows Server 2003 SP2
.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen für .NET Framework.