Procédure pas à pas : ajout d'une validation à un groupe de données

Mise à jour : novembre 2007

Cette procédure pas à pas montre comment valider des données lorsque des modifications y sont apportées dans un groupe de données. L'emplacement auquel vous exécutez des contrôles de validation sur vos données dépend des exigences de votre application ; dans le cadre de cette procédure pas à pas, nous validons les données lors de la modification de valeurs contenues dans des colonnes individuelles. Cette procédure pas à pas utilise l'événement ColumnChanging pour vérifier qu'une valeur acceptable est entrée dans l'enregistrement. Si la valeur n'est pas valide, un contrôle ErrorProvider est affiché pour l'utilisateur.

Cet exemple indique également comment utiliser le Concepteur de DataSet afin de créer une classe partielle pour le groupe de données. La classe partielle correspond à l'emplacement dans lequel les utilisateurs peuvent ajouter du code pour étendre les fonctionnalités du groupe de données généré par Visual Studio. Elle n'est pas remplacée en cas de régénération du groupe de données.

Remarque :

Les boîtes de dialogue et les commandes de menu que vous voyez peuvent différer de celles qui sont décrites dans l'aide selon vos paramètres actifs ou votre édition. Pour modifier vos paramètres, choisissez Importation et exportation de paramètres dans le menu Outils. Pour plus d'informations, consultez Paramètres Visual Studio.

Cette procédure pas à pas illustre les tâches suivantes :

Composants requis

Pour exécuter cette procédure pas à pas, vous devez :

Création d'une nouvelle application Windows

Pour créer le nouveau projet Application Windows

  1. Dans le menu Fichier, créez un nouveau projet.

  2. Nommez le projet ValidationWalkthrough.

  3. Sélectionnez Application Windows, puis cliquez sur OK. Pour plus d'informations, consultez Création d'applications Windows.

    Le projet ValidationWalkthrough est créé et ajouté à l'Explorateur de solutions.

Création d'une nouvelle source de données à partir de votre base de données

Pour créer la source de données

  1. Dans le menu Données, cliquez sur Afficher les sources de données.

  2. Dans la fenêtre Sources de données, sélectionnez Ajouter une nouvelle source de données pour démarrer l'Assistant Configuration de source de données.

  3. Sélectionnez Base de données dans la page Choisir un type de source de données, puis cliquez sur Suivant.

  4. Dans la page Choisir votre connexion de données, effectuez l'une des opérations suivantes :

    • Si une connexion de données à l'exemple de base de données Northwind est disponible dans la liste déroulante, sélectionnez-la.

      - ou -

    • Sélectionnez Nouvelle connexion pour afficher la boîte de dialogue Ajouter/Modifier la connexion. Pour plus d'informations, consultez Ajouter/Modifier une connexion, boîte de dialogue (Général).

  5. Si votre base de données requiert un mot de passe, sélectionnez l'option pour inclure les données sensibles, puis cliquez sur Suivant.

  6. Cliquez sur Suivant dans la page Enregistrer la chaîne de connexion dans le fichier de configuration de l'application.

  7. Développez le nœud Tables dans la page Choisir vos objets de base de données.

  8. Sélectionnez la table Order Details, puis cliquez sur Terminer.

    NorthwindDataSet est ajouté à votre projet et la table OrderDetails apparaît dans la fenêtre Sources de données.

Création de contrôles liés aux données

Pour créer des contrôles liés aux données sur le formulaire

  1. Dans la fenêtre Sources de données, sélectionnez la table Order Details.

  2. Choisissez Détails dans la liste de contrôles de la table.

  3. Faites glisser le nœud Order Details depuis la fenêtre Sources de données jusqu'à Form1.

    Les contrôles liés aux données avec des étiquettes descriptives s'affichent sur le formulaire, ainsi qu'une barre d'outils (BindingNavigator) pour naviguer au sein des enregistrements. Les contrôles liés aux données avec des étiquettes descriptives s'affichent sur le formulaire, ainsi qu'une barre d'outils (BindingNavigator) pour naviguer au sein des enregistrements. NorthwindDataSet, Order_DetailsTableAdapter, BindingSource et BindingNavigator s'affichent dans la barre d'état des composants.

Ajout d'un contrôle ErrorProvider au formulaire

Pour configurer un contrôle ErrorProvider

  1. Faites glisser un contrôle ErrorProvider depuis la Boîte à outils jusqu'à Form1.

  2. Dans la fenêtre Propriétés, affectez à la propriété DataSource de ErrorProvider la valeur Order_DetailsBindingSource.

    Remarque :

    Ne définissez pas la propriété DataMember.

Création du gestionnaire d'événements ColumnChanging

Pour créer les gestionnaires d'événements de validation

  1. Ouvrez NorthwindDataSet dans le Concepteur de DataSet en double-cliquant sur le fichier NorthwindDataSet.xsd dans l'Explorateur de solutions.

  2. Double-cliquez sur la colonne Quantity dans la table OrderDetails pour créer le gestionnaire d'événements OrderDetailsDataTable_ColumnChanging. (En C#, seule la classe partielle de la table de données est créée.)

    Remarque :

    Si vous double-cliquez sur le nom de la table (Order Details dans la barre de titre), un gestionnaire d'événements est créé pour l'événement RowChanging.

  3. Ajoutez du code pour vérifier que e.ProposedValue contient des valeurs supérieures à 0. Si la valeur proposée est inférieure ou égale à 0, définissez la colonne pour indiquer qu'elle contient une erreur.

    Collez le code suivant dans le gestionnaire d'événements de modification de colonne, sous le commentaire Ajoutez le code utilisateur ici :

    If CType(e.ProposedValue, Short) <= 0 Then
            e.Row.SetColumnError(e.Column, "Quantity must be greater than 0")
        Else
            e.Row.SetColumnError(e.Column, "")
    End If
    
    // C#
    // Add the following code 
    // to the partial class.
        public override void EndInit()
        {
            base.EndInit();
            Order_DetailsRowChanging += TestRowChangeEvent;
        }
    
        public void TestRowChangeEvent(object sender, Order_DetailsRowChangeEvent e)
        {
            if ((short)e.Row.Quantity <= 0)
            {
                e.Row.SetColumnError("Quantity", "Quantity must be greater than 0");
            }
            else
            {
                e.Row.SetColumnError("Quantity", "");
            }
        }
    

Test de l'application

Pour tester l'application

  1. Appuyez sur F5 pour exécuter l'application.

  2. Remplacez la valeur de la zone de texte Quantité par 0.

  3. Appuyez sur TABULATION pour déplacer le focus hors de la zone de texte.

    L'icône du fournisseur d'erreur apparaît.

  4. Posez le pointeur de votre souris au-dessus du fournisseur d'erreur pour afficher le message.

Étapes suivantes

Selon les spécifications de votre application, il se peut que vous deviez effectuer différentes opérations après l'ajout de la validation. Vous pouvez apporter à cette procédure pas à pas les améliorations suivantes :

Voir aussi

Concepts

Nouveautés des données

Vue d'ensemble de l'affichage des données

Autres ressources

Procédures pas à pas relatives aux données

Connexion aux données dans Visual Studio

Préparation de votre application pour recevoir des données

Extraction de données dans votre application

Affichage des données sur des formulaires dans les applications Windows

Modification des données dans votre application

Validation des données

Enregistrement des données