Nouveau LiveBinding
Remonter à Boîtes de dialogue LiveBindings
La boîte de dialogue Nouveau LiveBinding apparaît quand vous essayez de créer un nouveau LiveBinding dans votre application depuis l'éditeur de listes de liaisons. Dans la boîte de dialogue Nouveau LiveBinding, vous êtes invité à sélectionner une classe de liaison pour votre nouveau LiveBinding.
Sommaire
Classes de liaison
Les classes de liaison disponibles, telles qu'exposées par la boîte de dialogue Nouveau LiveBinding, sont :
- Liaisons rapides
- TLinkGridToDataSource lie une grille à une source de données.
- TLinkListControlToField lie une liste à un champ d'une source de données. Elle est utilisée pour remplir une liste avec les valeurs de champ d'une source de données, et naviguer dans la source de données au moyen du contrôle liste. Au fur et à mesure que la source de données est éditée, le contrôle est automatiquement mis à jour.
- TLinkControlToField lie un contrôle à un champ d'une source de données. Quand le contrôle est modifié par l'entrée utilisateur, le champ est mis à jour. Quand le champ change, le contrôle est mis à jour.
- TLinkControlToProperty lie un contrôle à une propriété. Quand le contrôle est modifié par l'entrée utilisateur, la propriété de composant est mise à jour.
- TLinkPropertyToField lie une propriété à un champ d'une source de données. Quand le champ est édité ou que la source de données a subi un défilement, la propriété de composant est mise à jour.
- TLinkFillControlToField ressemble à TLinkControlToField, mais quand elle est utilisée avec un contrôle liste, elle peut remplir la liste avec les valeurs d'une autre source de données.
- TLinkFillControlToProperty ressemble à TLinkControlToProperty, mais quand elle est utilisée avec un contrôle liste, elle peut remplir la liste avec les valeurs d'une source de données.
- Expressions de liaison
- TBindExpression crée une nouvelle expression de liaison.
- TBindExprItems est utilisée pour la synchronisation de divers contrôles.
- Liens
- TBindLink est utilisée pour supporter l'édition bidirectionnelle entre un contrôle et un champ d'une source de données -- en exécutant les expressions de liaison quand la valeur d'un contrôle change et quand la valeur du champ change.
- TBindListLink est utilisée pour permettre à un contrôle liste de montrer les valeurs d'une source de données, de naviguer dans la source de données, et de rester à jour quand la source de données est éditée.
- TBindGridLink est utilisée pour permettre à un contrôle grille de montrer les valeurs d'une source de données, de naviguer dans la source de données, et de rester à jour quand la source de données est éditée. Aussi utilisée pour mettre à jour la source de données quand une cellule de la grille est éditée.
- TBindPosition est utilisée pour permettre un contrôle positionnel tel qu'une barre de défilement pour faire défiler une source de données.
- TBindControlValue exécute les expressions de liaison quand la valeur d'un contrôle a changé.
- Listes
- TBindList est utilisée pour remplir un contrôle liste à partir d'une source de données.
- TBindGridList ressemble à TBindList, mais elle fonctionne sur des grilles. Elle est utilisée pour remplir un contrôle grille à partir d'une source de données.
- Liens BD (obsolètes)
- TBindDBEditLink est utilisée pour lier une zone d'édition à un champ texte éditable d'une source de données.
- TBindDBTextLink est utilisée pour lier un libellé à un champ texte d'une source de données.
- TBindDBListLink est utilisée pour lier une liste à un champ d'une source de données.
- TBindDBImageLink est utilisée pour lier un contrôle image à un champ graphique d'une source de données.
- TBindDBMemoLink est utilisée pour lier un contrôle mémo à un champ texte multiligne d'une source de données.
- TBindDBCheckLink est utilisée pour lier un contrôle case à cocher à un champ booléen d'une source de données.
- TBindDBGridLink est utilisée pour lier un contrôle grille à une source de données.
Pour valider votre sélection, cliquez sur le bouton OK.
A ce stade, votre nouveau LiveBinding doit apparaître dans l'inspecteur d'objets, ainsi que dans la liste de liaisons qui est présente sur votre fiche.
Référence des composants de liaison rapide
Cette section couvre certains aspects associés aux composants de liaison rapide. En d'autres termes, c'est un guide de référence rapide. La différence entre les composants de liaison rapide et les autres composants de liaison tels que TBindLink, TBindList et ainsi de suite, est que les composants de liaison rapide génèrent automatiquement les expressions, tandis que les autres composants nécessitent l'édition manuelle des expressions. Ainsi, dans l'éditeur des expressions d'un composant de liaison rapide, vous pouvez visualiser les expressions générées, mais vous ne pouvez pas les éditer.
Délégués
Chacun des composants de liaison rapide délègue à un autre composant LiveBindings. Le délégué est responsable de l'exécution des expressions et de la surveillance de l'entrée utilisateur. Les composants de liaison rapide sont responsables de la génération des chaînes d'expressions correctes dans le composant délégué. Voici les délégués :
- TLinkPropertyToField délègue à TCustomBindLink.
- TLinkListControlToField délègue à TCustomBindListLink.
- TLinkControlToProperty délègue à TCustomBindControlValue.
Composants des sources de liaison
Les composants des sources de liaison tels que TBindSourceDB sont utilisés lors de la liaison aux champs. Par exemple, TLinkPropertyToField, TLinkListControlToField et TLinkControlToField ont tous une référence à un composant de portée. Ils ont aussi une propriété nom de champ, qui est sélectionnée dans une liste de champs fournie par le composant de portée.
Par exemple, dans l'image suivante, un composant TLinkPropertyToField référence un TBindSourceDB appelé BindScopeDB1, et un champ -- Species Name.
TBindScope ne peut pas être utilisé avec des composants de liaison rapide mais les composants suivants fonctionnent :
La source de données doit dériver de TBaseLinkingBindSource.
Génération d'expressions
Afin que les composants de liaison rapide génèrent des expressions correctes, ils doivent collecter des informations sur les membres des composants liés. Par exemple, lors de la liaison à un contrôle, ils doivent connaître la propriété du contrôle qui est changée quand le contrôle est modifié par l'entrée utilisateur. Lors de la liaison à un champ, ils doivent connaître le nom de la méthode ou de la propriété du champ pour accéder à la valeur du champ.
Les composants de portée fournissent une interface permettant d'obtenir le nom de membre d'un champ.
Editeur d'expressions
L'éditeur d'expressions peut être utilisé pour visualiser les expressions, mais elles sont toutes en lecture seule. Le composant doit être actif afin que les expressions puissent être générées et visualisées.