Übersteuerung der Sperrung des 'Weiter'-Navigationsbuttons

Die direkte Kopplung der Vorwärts-Navigation an die Eingabevalidierung kann für spezielle Anwendungsfälle gezielt übersteuert werden, indem trotz vorliegender Validierungsfehler eine Betätigung des Vorwärts-Navigationsbuttons zugelassen wird.

Um dies zu erreichen, muss im betroffenen Dialogschritt die Methode OnGetIsValidForNavigation so implementiert werden, dass sie in den gewünschten Situationen den Wert true zurückgibt. Die Methode erhält als Eingabeparameter alle aus der Validierung ermittelten Fehler in einer Instanz der Schnittstelle IValidationResultInfo, die eine komfortable Bewertung daraufhin ermöglicht, ob zu bestimmten Properties des Dialogschritts Validierungsfehler vorliegen, und ggf. die Analyse der jeweiligen Fehlermeldung erlaubt.

Das Ergebnis des Aufrufs von OnGetIsValidForNavigation wird nicht unmittelbar angewandt, sondern logisch mit dem Validierungsergebnis verknüpft. Es ist auf diese Weise möglich, die Sperrung der Vorwärts-Navigation aufzuheben, obwohl Validierungsfehler vorliegen und angezeigt werden; es ist jedoch nicht möglich, die Vorwärts-Navigation zu sperren, obwohl keine Validierungsfehler vorliegen.

Validierungsergebnisse des Webservice-Validators sind von der Übersteuerung ausgenommen.

CodeBehind des Dialogschritts

protected override bool OnGetIsValidForNavigation(IValidationResultInfo validationResultInfo)
{
	var hasRequiredFailures = 
           validationResultInfo.HasErrorsInProperties("RequiredProperty", "MyBuch.Titel");

	var hasOtherFailures = 
           validationResultInfo.HasErrorsInPropertiesExcept("RequiredProperty", "MyBuch.Autor");

	return !hasRequiredFailures && !hasOtherFailures;
}
Cookie Consent mit Real Cookie Banner