Vue d’ensemble du composant BindingSource

Le composant BindingSource est conçu pour simplifier le processus de liaison de contrôles à une source de données sous-jacente. Le composant BindingSource agit à la fois comme un canal de communication et comme une source de données avec laquelle d'autres contrôles établissent une liaison. Il fournit une abstraction de la connexion de données de votre formulaire tout en transmettant les commandes à la liste de données sous-jacente. De plus, vous pouvez y ajouter des données directement, pour que le composant lui-même fonctionne comme une source de données.

Composant BindingSource comme intermédiaire

Le composant BindingSource agit comme source de données pour tout ou une partie des contrôles du formulaire. Dans Visual Studio, le BindingSource contrôle peut être lié à un contrôle au moyen de la DataBindings propriété, accessible à partir de la fenêtre Propriétés . Consultez également Comment : lier des contrôles Windows Forms au composant BindingSource à l'aide du concepteur.

Vous pouvez lier le composant BindingSource à des sources de données simples (comme une seule propriété d'un objet ou une collection de base telle que ArrayList) et à des sources de données complexes (comme une table de base de données). Le composant BindingSource joue le rôle d’intermédiaire fournissant des services de liaison et de gestions de devises. Au moment du design ou de l'exécution, vous pouvez lier un composant BindingSource à une source de données complexe en affectant respectivement la base de données et la table à ses propriétés DataSource et DataMember. L'illustration suivante montre où vient se placer le composant BindingSource dans l'architecture de liaison de données existante.

Binding Source and Data Binding Architecture

Remarque

Au moment du design, certaines actions (comme le déplacement d'une table de base de données d'une fenêtre de données vers un nouveau formulaire) créent le composant BindingSource, le lient à la source de données sous-jacente et ajoutent des contrôles de données en une seule opération. Consultez également Liaison de contrôles Windows Forms à des données dans Visual Studio.

Composant BindingSource comme source de données

Si vous commencez à ajouter des éléments au composant BindingSource sans spécifier au préalable une liste avec laquelle établir une liaison, il agit comme une source de données de liste et accepte ces éléments ajoutés.

En outre, vous pouvez écrire du code pour fournir une fonctionnalité « AddNew » personnalisée à l'aide de l'événement AddingNew, qui est déclenché quand la méthode AddNew est appelée avant l'ajout de l'élément à la liste. Pour plus d'informations, consultez Architecture du composant BindingSource.

Pour les utilisateurs qui doivent parcourir les données d'un formulaire, le composant BindingNavigator permet de parcourir et de manipuler les données conjointement avec un composant BindingSource. Pour plus d'informations, consultez BindingNavigator, contrôle.

Manipulation de données

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

Membre Description
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 qui est 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 sélectionné de la liste.
Méthode EndEdit Applique des 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. Dans le cas contraire, la demande est passée à 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 travailler avec un affichage ordonné ou filtré de la source de données. Le tableau suivant montre les membres fournis par la source de données du composant BindingSource.

Membre Description
Propriété Sort Si la source de données est un IBindingList, obtient ou définit un nom de colonne utilisé pour le tri et les informations d'ordre de tri. Si la source de données est un IBindingListView et prend en charge le tri avancé, obtient plusieurs noms de colonnes utilisés pour le tri et les informations d'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 affichées.

Voir aussi