Le DataBinding de Framework.Net

Le DataBinding de Framework.Net


Objectif:

  • Etre capable de mettre à jour des enregistrements dans une base de données Access,en utilisant le c#.



    1. Description:

      • Le Databinding est une fonctionnalité qui permet d’associer une source de données à un contrôle Windows Forms.
      • Le DataBinding est une fonctionnalité puissante fournie par le framework .NET qui permet aux éléments visuels d’un client de se connecter à une source de données telle que DataSets, DataViews, Arrays, etc.
      • Le fait de “binder” (lier) ces données permettra au contrôle de les afficher automatiquement en évitant de devoir parcourir toutes les données et les renseigner une à une.
      • La liaison de données permet aux développeurs de créer un lien de lecture / écriture entre les contrôles d’un formulaire et les données de leur application (leur modèle de données).
      • La liaison de données Windows Forms vous permet d’accéder aux données des bases de données.
      • La liaison de données consiste à récupérer des données d’une source et à les associer dynamiquement à une propriété de certains éléments visuels.
    2. BindingContext:

      • Le DataBinding de Framework.Net

      • Si vous ajoutez un TextBox contrôle à un formulaire et le lier à une colonne d’une table dans un dataset, le contrôle communique avec le BindingContext du formulaire.
      • Le BindingContext, à son tour, communique avec le spécifique CurrencyManager pour cette association de données.
      • Si vous avez un contrôle TextBox sur un formulaire et le liez à une colonne d’une table (le nom de table suivi par un point et le nom du champs) dans un jeu de données (le nom dataset).
      • Le contrôle communique avec l’objet BindingContext pour ce formulaire.
      • L’objet BindingContext, à son tour, parle à l’objet CurrencyManager spécifique pour cette association de données.
      • Si vous avez interrogé la propriété Position de CurrencyManager, elle signale l’enregistrement en cours pour la liaison de ce contrôle TextBox.
      • Dans l’exemple ci-dessous, un contrôle TextBox est lié à la colonne “cin” d’une table “apprenants” sur l’ ensemble de données “ds” via l’objet BindingContext pour le formulaire sur lequel il se trouve.
      • // Liaison de données simple 
        txtCin.DataBindings.Add("text",  ds, "apprenants.cin"); 
        // Récupère le CurrencyManager actuel de Rowposition
        CurrencyManager cm = (CurrencyManager)this.BindingContext[ds, "apprenants"];
                    if (cm.Position < cm.Count - 1)
                    {
                        cm.Position++;
                    }
        
    3. Types de Binding

      • Binding simple: une propriété d’un contrôle est liée à une seule valeur Ex: TextBox avec une colonne dans le tableau
      • Binding complexe: un contrôle est associé à une ou plusieurs valeurs de données  Ne peut être effectué que sur des contrôles afficher plus d’une valeur à la fois Ex: comboBox
      • Le Binding complexe vous permet de lier le contrôle avec plusieurs éléments de données
      • Certains des contrôles qui prennent en charge les Binding complexe sont DataGridView,Listbox, comboBox et les ErrorProvider
    4. CurrencyManager

      • Le CurrencyManager est utilisé pour synchroniser les contrôles liés aux données les uns avec les autres (en affichant les données du même enregistrement).
      • Le CurrencyManager est objet qui permet de parcourir les lignes du DataTable.
      • Une ligne du DataTable est toujours la ligne en cours
      • Les objets CurrencyManager sont inclus dans les composants BindingSource
        • Position property: Numéro de la ligne actuelle (base zéro)
        • Count Property : Combien de lignes y a-t-il dans le tableau?
      • Chaque objet Binding parle à a CurrencyManager ou a PropertyManager.
      • CurrencyManager et les PropertyManager sont dérivés de la classe de base BindingManagerBase.
      • Chaque formulaire Windows a au moins un objet BindingContext qui gère les objets CurrencyManager pour le formulaire.
    5. Exercice d’explication

      • Créez une application c# qui accédera à la base de données “Gestion apprenants.accdb” et affichera les informations sur le formulaire dans des zones de texte liées.
      • Le programme doit utiliser un DataAdapter, un Dataset, une Binding Source et un CurrencyManager pour manipuler les données de la table apprenant.
    6. Vidéo d’explication

    Abonnez vous à notre chaîne YouTube gratuitement