Partager via


Vue d’ensemble du composant BindingSource

Le BindingSource composant est conçu pour simplifier le processus de liaison des contrôles vers une source de données sous-jacente. Le BindingSource composant agit à la fois comme un conduit et une source de données pour que d’autres contrôles se lient. Il fournit une abstraction de la connexion aux données de votre formulaire tout en transmettant des commandes à la liste de données sous-jacente. En outre, vous pouvez ajouter des données directement à celui-ci, afin que le composant lui-même fonctionne comme source de données.

Composant BindingSource en tant qu’intermédiaire

Le BindingSource composant agit comme source de données pour certains contrôles ou tous les contrôles du formulaire. Dans Visual Studio, le BindingSource peut être associé à un contrôle via la propriété DataBindings, accessible à partir de la fenêtre Propriétés. Découvrez également comment : lier des contrôles Windows Forms avec le composant BindingSource à l’aide du concepteur.

Vous pouvez lier le BindingSource composant aux deux sources de données simples, comme une propriété unique d’un objet ou une collection de base comme ArrayList, et des sources de données complexes, comme une table de base de données. Le BindingSource composant agit en tant qu’intermédiaire qui fournit des services de liaison et de gestion monétaire. Au moment de la conception ou de l’exécution, vous pouvez lier un composant BindingSource à une source de données complexe en définissant ses propriétés DataSource et DataMember sur la base de données et la table, respectivement. L’illustration suivante montre où le BindingSource composant s’adapte à l’architecture de liaison de données existante.

Architecture de liaison des sources et de liaison des données

Remarque

Au moment de la conception, certaines actions, telles que le déplacement d’une table de base de données depuis une fenêtre de données vers un formulaire vide, créent le BindingSource composant, le lient à la source de données sous-jacente et ajoutent des contrôles liés aux données en une seule opération. Consultez également Lier des contrôles Windows Forms aux données dans Visual Studio.

Composant BindingSource en tant que source de données

Si vous commencez à ajouter des éléments au BindingSource composant sans spécifier d’abord une liste à lier, le composant agit comme une source de données de style liste et accepte ces éléments ajoutés.

En outre, vous pouvez écrire du code pour fournir des fonctionnalités « AddNew » personnalisées au moyen de l’événement AddingNew , qui est déclenché lorsque la AddNew méthode est appelée avant l’ajout de l’élément à la liste. Pour plus d’informations, consultez Architecture des composants BindingSource.

Pour les utilisateurs qui doivent parcourir les données d’un formulaire, le BindingNavigator composant vous permet de naviguer et de manipuler des données, en coordination avec un BindingSource composant. Pour plus d’informations, consultez BindingNavigator Control.

Manipulation des données

Le BindingSource agit comme une CurrencyManager pour toutes ses liaisons et peut, par conséquent, fournir l'accès aux informations concernant la monnaie et la position de la source de données. Le tableau suivant montre les membres que le BindingSource composant fournit pour accéder aux données sous-jacentes et les manipuler.

Membre Descriptif
Propriété Current Obtient l’élément actuel de la source de données.
Propriété Position Obtient ou définit la position actuelle dans la liste sous-jacente.
Propriété List Obtient la liste issue de l'évaluation de DataSource et DataMember. Si DataMember n'est pas défini, retourne la liste spécifiée par DataSource.
méthode Insert Insère un élément dans la liste à l’index spécifié.
méthode RemoveCurrent Supprime l’élément actuel de la liste.
méthode EndEdit Applique les modifications en attente à la source de données sous-jacente.
méthode CancelEdit Annule l’opération de modification actuelle.
méthode AddNew Ajoute un nouvel élément à la liste sous-jacente. Si la source de données implémente IBindingList et retourne un élément à partir de l’événement AddingNew , ajoute cet élément. Sinon, la requête est transmise à la méthode AddNew de la liste. Si la liste sous-jacente n’est pas une IBindingList, l’élément est automatiquement créé via son constructeur sans paramètre public.

Tri et filtrage

En règle générale, vous devez utiliser une vue triée ou filtrée de la source de données. Le tableau suivant montre les membres que la source de données du composant BindingSource fournit.

Membre Descriptif
Propriété Sort Si la source de données est un IBindingList, ce qui obtient ou définit un nom de colonne utilisé pour le tri ainsi que les informations sur l'ordre de tri. Si la source de données est un IBindingListView et prend en charge le tri avancé, elle obtient les noms de plusieurs colonnes utilisés pour le tri ainsi que les informations concernant l'ordre de tri.
Propriété Filter Si la source de données est un IBindingListView, obtient ou définit l’expression utilisée pour filtrer les lignes qui sont consultées.

Voir aussi