Procédure pas à pas : liaison de données simple dans un projet au niveau du document
Mise à jour : novembre 2007
S'applique à |
---|
Les informations de cette rubrique s'appliquent uniquement aux projets Visual Studio Tools pour Office et versions de Microsoft Office spécifiés. Type de projet
Version de Microsoft Office
Pour plus d'informations, consultez Fonctionnalités disponibles par type d'application et de projet. |
Cette procédure pas à pas présente les notions de base relatives à la liaison de données dans un projet au niveau du document. Un champ de données unique d'une base de données SQL Server est lié à une plage nommée de Microsoft Office Excel. La procédure pas à pas indique également comment ajouter des contrôles permettant de faire défiler tous les enregistrements de la table.
Cette procédure pas à pas décrit les tâches suivantes :
Création d'une source de données pour un projet Excel
Ajout de contrôles à une feuille de calcul
Défilement des enregistrements d'une base de données
Remarque : |
---|
Il est possible que votre ordinateur affiche des noms ou des emplacements différents pour certains des éléments d'interface utilisateur Visual Studio dans les instructions suivantes. L'édition de Visual Studio dont vous disposez et les paramètres que vous utilisez déterminent ces éléments. Pour plus d'informations, consultez Paramètres Visual Studio. |
Composants requis
Pour exécuter cette procédure pas à pas, vous avez besoin des éléments suivants :
Visual Studio Tools pour Office (composant facultatif de Visual Studio 2008 Professional et Visual Studio Team System)
Microsoft Office Excel 2003 ou 2007
Accès à un serveur sur lequel est installé l'exemple de base de données SQL Server Northwind
Autorisations d'accès en lecture et écriture à la base de données SQL Server
Création d'un projet
Dans cette étape, vous allez créer un projet de classeur Excel.
Pour créer un projet
- Créez un projet de classeur Excel et attribuez-lui le nom My Simple Data Binding à l'aide de Visual Basic ou de C#. Assurez-vous d'avoir sélectionné Créer un nouveau document. Pour plus d'informations, consultez Comment : créer des projets Visual Studio Tools pour Office.
Visual Studio ouvre le nouveau classeur Excel dans le concepteur et ajoute le projet My Simple Data Binding à l'Explorateur de solutions.
Création de la source de données
Utilisez la fenêtre Sources de données pour ajouter un groupe de données typé à votre projet.
Pour créer la source de données
Si la fenêtre Sources de données n'est pas visible, cliquez sur Afficher les sources de données dans le menu Données.
Remarque : Si Afficher les sources de données n'est pas disponible, cliquez à l'intérieur du classeur Excel, puis vérifiez une nouvelle fois.
Cliquez sur Ajouter une nouvelle source de données pour démarrer l'Assistant Configuration de source de données.
Sélectionnez Base de données, puis cliquez sur Suivant.
Sélectionnez une connexion de données à l'exemple de base de données SQL Server Northwind ou ajoutez une nouvelle connexion à l'aide du bouton Nouvelle connexion.
Après avoir sélectionné ou créé une connexion, cliquez sur Suivant.
Désélectionnez l'option pour enregistrer la connexion si elle est sélectionnée, puis cliquez sur Suivant.
Développez le nœud Tables dans la fenêtre Objets de base de données.
Activez la case à cocher située à côté de la table Customers.
Cliquez sur Terminer.
L'Assistant ajoute la table Customers à la fenêtre Sources de données. Un groupe de données typé est également ajouté à votre projet, visible dans l'Explorateur de solutions.
Ajout de contrôles à la feuille de calcul
Pour cette procédure pas à pas, vous avez besoin de deux plages nommées et de quatre boutons sur la première feuille de calcul. Commencez par ajouter les deux plages nommées de la fenêtre Sources de données afin qu'elles soient automatiquement liées à la source de données. Ensuite, ajoutez les boutons de la Boîte à outils.
Pour ajouter deux plages nommées
Vérifiez que le classeur My Simple Data Binding.xls est ouvert dans le concepteur Visual Studio et que Sheet1 est affiché.
Ouvrez la fenêtre Sources de données et développez le nœud Customers.
Sélectionnez la colonne CompanyName, puis cliquez sur la flèche de déroulement qui apparaît.
Sélectionnez NamedRange dans la liste déroulante, puis faites glisser la colonne CompanyName jusqu'à la cellule A1.
Un contrôle NamedRange nommé companyNameNamedRange est créé dans la cellule A1. En même temps, un BindingSource nommé customersBindingSource, un adaptateur de table et une instance de DataSet sont ajoutés au projet. Le contrôle est lié à BindingSource, qui est lié à son tour à l'instance de DataSet.
Sélectionnez la colonne CustomerID dans la fenêtre Sources de données, puis cliquez sur la flèche de déroulement qui apparaît.
Cliquez sur NamedRange dans la liste déroulante, puis faites glisser la colonne CustomerID jusqu'à la cellule B1.
Un autre contrôle NamedRange nommé customerIDNamedRange est créé dans la cellule B1 et lié à la BindingSource.
Pour ajouter quatre boutons
À partir de l'onglet Contrôles communs de la Boîte à outils, ajoutez un contrôle Button à la cellule A3 de la feuille de calcul.
Ce bouton est nommé Button1.
Ajoutez, dans cet ordre, trois boutons supplémentaires aux cellules suivantes afin que les noms soient comme indiqué :
Cellule
(Name)
B3
Button2
C3
Button3
D3
Button4
L'étape suivante consiste à ajouter du texte aux boutons et à ajouter des gestionnaires d'événements en C#.
Initialisation des contrôles
Définissez le texte du bouton et ajoutez des gestionnaires d'événements pendant l'événement Startup.
Pour initialiser les contrôles
Dans l'Explorateur de solutions, cliquez avec le bouton droit sur Sheet1.vb ou Sheet1.cs, puis cliquez sur Afficher le code dans le menu contextuel.
Ajoutez le code suivant à la méthode Sheet1_Startup afin de définir le texte pour chaque bouton.
With Me .Button1.Text = "|<" .Button2.Text = "<" .Button3.Text = ">" .Button4.Text = ">|" End With
this.button1.Text = "|<"; this.button2.Text = "<"; this.button3.Text = ">"; this.button4.Text = ">|";
Pour C# uniquement, ajoutez des gestionnaires d'événements pour les événements Click de bouton à la méthode Sheet1_Startup.
this.button1.Click += new EventHandler(button1_Click); this.button2.Click += new EventHandler(button2_Click); this.button3.Click += new EventHandler(button3_Click); this.button4.Click += new EventHandler(button4_Click);
Maintenant, ajoutez du code pour gérer les événements Click des boutons afin que l'utilisateur puisse parcourir les enregistrements.
Ajout de code pour pouvoir faire défiler les enregistrements
Ajoutez du code au gestionnaire d'événements Click de chaque bouton pour parcourir les enregistrements.
Pour vous déplacer jusqu'au premier enregistrement
Ajoutez un gestionnaire d'événements pour l'événement Click du bouton Button1 et ajoutez le code suivant afin de vous déplacer jusqu'au premier enregistrement :
Private Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) _ Handles Button1.Click Me.CustomersBindingSource.MoveFirst() End Sub
private void button1_Click(object sender, System.EventArgs e) { this.customersBindingSource.MoveFirst(); }
Pour revenir à l'enregistrement précédent
Ajoutez un gestionnaire d'événements pour l'événement Click du bouton Button2 et ajoutez le code suivant afin de revenir à la position précédente :
Private Sub Button2_Click(ByVal sender As Object, ByVal e As System.EventArgs) _ Handles Button2.Click Me.CustomersBindingSource.MovePrevious() End Sub
private void button2_Click(object sender, System.EventArgs e) { this.customersBindingSource.MovePrevious(); }
Pour vous déplacer jusqu'à l'enregistrement suivant
Ajoutez un gestionnaire d'événements pour l'événement Click du bouton Button3 et ajoutez le code suivant afin de passer à la position suivante :
Private Sub Button3_Click(ByVal sender As Object, ByVal e As System.EventArgs) _ Handles Button3.Click Me.CustomersBindingSource.MoveNext() End Sub
private void button3_Click(object sender, System.EventArgs e) { this.customersBindingSource.MoveNext(); }
Pour vous déplacer jusqu'au dernier enregistrement
Ajoutez un gestionnaire d'événements pour l'événement Click du bouton Button4 et ajoutez le code suivant afin de vous déplacer jusqu'au dernier enregistrement :
Private Sub Button4_Click(ByVal sender As Object, ByVal e As System.EventArgs) _ Handles Button4.Click Me.CustomersBindingSource.MoveLast() End Sub
private void button4_Click(object sender, System.EventArgs e) { this.customersBindingSource.MoveLast(); }
Test de l'application
Vous pouvez maintenant tester votre classeur afin de vous assurer que vous pouvez parcourir les enregistrements de la base de données.
Pour tester votre classeur
Appuyez sur F5 pour exécuter votre projet.
Vérifiez que le premier enregistrement apparaît dans les cellules A1 et B1.
Cliquez sur le bouton > (Button3) et vérifiez que l'enregistrement suivant apparaît dans les cellules A1 et B1.
Cliquez sur les autres boutons de défilement pour confirmer que l'enregistrement est modifié comme vous le souhaitez.
Étapes suivantes
Cette procédure pas à pas présente les notions de base permettant de lier une plage nommée à un champ dans une base de données. Vous devrez peut-être ensuite exécuter les opérations suivantes :
Mettre en cache les données afin qu'elles puissent être utilisées hors connexion. Pour plus d'informations, consultez Comment : mettre en cache des données pour une utilisation hors connexion ou sur un serveur.
Lier des cellules à plusieurs colonnes dans une table au lieu de les lier à un champ. Pour plus d'informations, consultez Procédure pas à pas : liaison de données complexe dans un projet au niveau du document.
Utiliser un contrôle BindingNavigator pour faire défiler les enregistrements. Pour plus d'informations, consultez Comment : naviguer parmi les données avec le contrôle BindingNavigator Windows Forms.
Voir aussi
Tâches
Procédure pas à pas : liaison de données complexe dans un projet au niveau du document
Concepts
Liaison de données aux contrôles