J'ai un contrôle d'assistant dans mon projet asp.net 2.0, et il contient quelques étapes. La deuxième étape a une zone de texte avec un contrôle standardfieldvalidator obligatoire attaché à celui-ci. Lorsque l'utilisateur clique sur Suivant et que la case est vide, le validateur se plaint, tout est normal.Comment valider les champs lors de l'utilisation du contrôle de l'assistant asp.net?
Cependant, lorsque l'utilisateur utilise les étapes de la barre latérale pour passer à l'avant-dernière étape et clique sur Terminer, le validateur n'est pas déclenché et la zone de texte est vide. Dans mon back-end, j'ai ceci:
Protected Sub wizard_FinishButtonClick(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.WizardNavigationEventArgs) Handles wizard.FinishButtonClick
If Page.IsValid Then
...
Else
lblError.Text = "You missed some fields, please return and enter them"
e.Cancel = True
End If
End Sub
(lblError est une étiquette sur la page complète, mais ce n'est pas vraiment la question)
Ce code ne fonctionne pas ...
Qu'est-ce que une bonne solution à ce problème? Retirer la barre latérale et ne pas l'utiliser? A peine la plus belle solution ...
Je suggère personnellement d'éviter le contrôle de l'assistant comme la peste, mais c'est juste moi. – TheTXI
Ça ne me dérangerait pas de l'abandonner, mais quelle est l'alternative? Le créer moi-même, en stockant tous les champs en session? On dirait une opération coûteuse en temps .. – Tominator