Liaison de données et Windows Forms
Mise à jour : novembre 2007
Dans Windows Forms, vous avez la possibilité de lier des contrôles non seulement à des sources de données traditionnelles mais également à toute structure qui contient des données. Vous pouvez créer une liaison avec un tableau des valeurs que vous calculez au moment de l'exécution, lisez dans un fichier ou dérivez des valeurs d'autres contrôles.
En outre, vous pouvez lier n'importe quelle propriété de n'importe quel contrôle à la source de données. Traditionnellement, vous liez la propriété d'affichage, par exemple la propriété Text d'un contrôle TextBox, à la source de données. Avec le .NET Framework, vous pouvez également la possibilité de définir d'autres propriétés via la liaison de données. Vous pouvez utiliser la liaison pour effectuer les tâches suivantes :
définir le graphisme d'un contrôle image ;
définir la couleur d'arrière-plan d'un ou plusieurs contrôles ;
définir la taille des contrôles.
Fondamentalement, la liaison de données est une forme automatique de définition de toutes les propriétés accessibles au moment de l'exécution d'un contrôle du formulaire.
Types de liaison de données
Windows Forms peut tirer parti de deux types de liaison de données : la liaison simple et la liaison complexe. Chacune offre des avantages différents.
Type de liaison de données |
Description |
---|---|
Liaison de données simple |
Capacité d'un contrôle de se lier à un seul élément de données, tel qu'une valeur dans une colonne d'une table d'un groupe de données. C'est le type de liaison typique des contrôles, tels que TextBox ou Label, qui sont des contrôles qui n'affichent généralement qu'une seule valeur. En fait, il est possible de lier n'importe quelle propriété d'un contrôle à un champ d'une base de données. Il existe une prise en charge étendue pour cette fonctionnalité dans Visual Studio. |
Liaison de données complexe |
Capacité d'un contrôle de se lier à plusieurs éléments de données, généralement plusieurs enregistrements dans une base de données. La liaison complexe est également appelée liaison basée sur liste. Parmi les contrôles qui prennent en charge la liaison complexe, on trouve les contrôles DataGridView, ListBox et ComboBox. Pour obtenir un exemple de liaison de données complexe, consultez Comment : lier un contrôle ComboBox ou ListBox Windows Forms aux données. |
Composant BindingSource
Pour simplifier la liaison de données, Windows Forms vous permet de lier une source de données au composant BindingSource et puis de lier des contrôles à BindingSource. Vous pouvez utiliser la BindingSource dans des scénarios de liaison simple ou complexe. Dans les deux cas, la BindingSource agit comme un intermédiaire entre la source de données et les contrôles dépendants, assurant la notification de modifications, la gestion des devises et d'autres services.
Scénarios classiques de liaison de données
Presque chaque application commerciale utilise des informations lues dans des sources de données de différents types, généralement par le biais de la liaison de données. La liste suivante présente certains des scénarios les plus communs qui utilisent la liaison de données comme méthode de présentation et de manipulation des données.
Scénario |
Description |
---|---|
Création de rapports |
Les rapports constituent une solution souple pour l'affichage et la synthèse des données dans un document imprimé. Il est fréquent d'avoir recours aux rapports pour imprimer un contenu sélectionné d'une source de données à l'écran ou sur une imprimante. Les listes, les factures et les résumés constituent quelques exemples de rapports souvent utilisés. Si les éléments sont généralement mis en forme dans des colonnes de listes avec des sous-éléments classés sous chaque élément de liste, d'autres présentations peut-être plus adaptées à vos données sont également possibles. |
Entrée de données |
La méthode généralement utilisée pour entrer de gros volumes de données connexes ou pour demander aux utilisateurs de compléter des informations consiste à employer un formulaire d'entrée de données. Les utilisateurs peuvent entrer des informations ou opérer des choix à l'aide de zones de texte, de cases d'option, de listes déroulantes ou de cases à cocher. Les informations sont ensuite envoyées et stockées dans une base de données dont la structure est fondée sur les informations entrées. |
Relation maître/détail |
Le format d'application maître/détail est utilisé pour consulter des données liées. Spécifiquement, il s'agit de deux tables de données liées par une relation. Dans l'exemple commercial classique, une table "Customers" (Clients) et une table "Orders" (Commandes) liées par la relation entre les clients et leurs commandes respectives. Pour plus d'informations sur la création d'une application maître/détail avec deux contrôles DataGridView Windows Forms, consultez Comment : créer un formulaire maître/détail utilisant deux contrôles DataGridView Windows Form |
Table de correspondance |
Un autre scénario classique de manipulation et de présentation des données est la recherche de table. Souvent, dans le cadre d'un affichage de données plus important, un contrôle ComboBox est utilisé pour afficher et manipuler des données. Il faut savoir que les données affichées dans le contrôle ComboBox sont différentes des données écrites dans la base de données. Par exemple, si un contrôle ComboBox affiche les articles disponibles dans une épicerie, vous préférez consulter les noms des produits (pain, lait, œufs). Toutefois, pour simplifier la récupération des informations de la base de données et normaliser celle-ci, il est plus simple de stocker les informations relatives à des articles spécifiques d'une commande donnée sous la forme de numéros d'article (#501, #603, etc.). Par conséquent, il existe une connexion implicite entre le « nom convivial » du produit d'épicerie figurant dans le contrôle ComboBox de votre formulaire et le numéro d'article correspondant indiqué dans une commande. C'est l'essence d'une consultation de table. |
Voir aussi
Tâches
Comment : lier le contrôle DataGrid Windows Forms à une source de données