Comment : afficher des icônes d'erreur pour la validation de formulaire à l'aide du composant ErrorProvider Windows Forms
Vous pouvez utiliser un composant Windows Forms ErrorProvider pour afficher une icône d’erreur lorsque l’utilisateur entre des données non valides. Vous devez disposer d’au moins deux contrôles sur le formulaire pour pouvoir les tabulationr et appeler ainsi le code de validation.
Pour afficher une icône d’erreur lorsque la valeur d’un contrôle n’est pas valide
Ajoutez deux contrôles( par exemple, des zones de texte) à un Windows Form.
Ajoutez un ErrorProvider composant au formulaire.
Sélectionnez le premier contrôle et ajoutez du code à son Validating gestionnaire d’événements. Pour que ce code s’exécute correctement, la procédure doit être connectée à l’événement. Pour plus d’informations, consultez Guide pratique pour créer des gestionnaires d’événements au moment de l’exécution pour Windows Forms.
Le code suivant teste la validité des données entrées par l’utilisateur ; si les données ne sont pas valides, la SetError méthode est appelée. Le premier argument de la SetError méthode spécifie le contrôle à afficher en regard de l’icône. Le deuxième argument est le texte d’erreur à afficher.
Private Sub TextBox1_Validating(ByVal Sender As Object, _ ByVal e As System.ComponentModel.CancelEventArgs) Handles _ TextBox1.Validating If Not IsNumeric(TextBox1.Text) Then ErrorProvider1.SetError(TextBox1, "Not a numeric value.") Else ' Clear the error. ErrorProvider1.SetError(TextBox1, "") End If End Sub
protected void textBox1_Validating (object sender, System.ComponentModel.CancelEventArgs e) { try { int x = Int32.Parse(textBox1.Text); errorProvider1.SetError(textBox1, ""); } catch (Exception ex) { errorProvider1.SetError(textBox1, "Not an integer value."); } }
private: System::Void textBox1_Validating(System::Object ^ sender, System::ComponentModel::CancelEventArgs ^ e) { try { int x = Int32::Parse(textBox1->Text); errorProvider1->SetError(textBox1, ""); } catch (System::Exception ^ ex) { errorProvider1->SetError(textBox1, "Not an integer value."); } }
(Visual C#, Visual C++) Placez le code suivant dans le constructeur du formulaire pour inscrire le gestionnaire d’événements.
this.textBox1.Validating += new System.ComponentModel.CancelEventHandler(this.textBox1_Validating);
this->textBox1->Validating += gcnew System::ComponentModel::CancelEventHandler (this, &Form1::textBox1_Validating);
Exécutez le projet . Tapez des données non valides (dans cet exemple, non numériques) dans le premier contrôle, puis appuyez sur tabulation vers la seconde. Lorsque l’icône d’erreur s’affiche, pointez dessus avec le pointeur de la souris pour afficher le texte de l’erreur.
Voir aussi
.NET Desktop feedback
Commentaires
https://aka.ms/ContentUserFeedback.
Bientôt disponible : Tout au long de 2024, nous allons supprimer progressivement GitHub Issues comme mécanisme de commentaires pour le contenu et le remplacer par un nouveau système de commentaires. Pour plus d’informations, consultezEnvoyer et afficher des commentaires pour