Pour afficher l’article en anglais, activez la case d’option Anglais. Vous pouvez aussi afficher la version anglaise dans une fenêtre contextuelle en faisant glisser le pointeur de la souris sur le texte.
Traduction
Anglais

Lier un objet à des données

Les données sont affichées en liant un élément de données à un objet sur la planche graphique.

Une liaison de données se compose de deux parties :

  • Contexte de données   Le contexte de données identifie la source de données dans laquelle obtenir les données. Un contexte de données peut être hérité : vous pouvez donc affecter un contexte de données à un objet parent pour que tous les objets enfants disposent d'un accès aux mêmes données. Cela est utile lorsqu’on lie plusieurs objets à des données se trouvant dans la même source de données, avant de créer un modèle liste-détails.

    Pour plus d'informations, consultez Créer une liaison de données liste-détails.

  • Liaison de propriété   La liaison de propriété identifie l'élément de données spécifique auquel une propriété est liée. Par exemple, vous pouvez lier la propriété Text d’un objet TextBlock à un élément chaîne dans la source de données, ou vous pouvez lier la propriété ItemsSource d’un objet ListBox à une collection dans la source de données. La liaison de propriété peut ne pas exister sur le même objet que le contexte de données, mais elle fonctionnera à condition que le contexte de données soit défini sur un objet plus élevé dans l'arborescence.

Pour créer des liaisons de données, vous pouvez faire glisser des éléments de données à partir du panneau Données ou créer manuellement une liaison de données en utilisant le panneau Propriétés pour définir le contexte de données et la liaison de propriété.

Pour lier des données par glissement des éléments à partir du panneau Données

  1. Dans le panneau Données, effectuez l’une des actions suivantes :

    • Cliquez sur Mode Liste JJ170055.9ad55afc-08ac-4f9a-ab3a-d55d0cf184d3(fr-fr,VS.120).png pour afficher les données dans un contrôle d’éléments tel que ListBox, DataGrid, TreeView, ComboBox, etc. Le mode Liste permet de créer une liste à partir d'une collection.

    • Cliquez sur Mode Détails JJ170055.7786ee28-da1d-41b2-93fd-b4caeb75ab98(fr-fr,VS.120).png pour afficher des données à partir d'un enregistrement dans une collection, ou pour afficher un seul élément de données.

  2. Dans le panneau Données, sélectionnez un ou plusieurs éléments de données, puis faites glisser votre sélection sur la planche graphique. Vous pouvez faire glisser votre sélection vers une zone vide de la planche graphique ou sur un objet existant.

    Blend for Visual Studio détermine l'action à réaliser en fonction du type de données que vous faites glisser. Le tableau suivant répertorie la manière dont Blend interprète les sélections de données :

    Action

    En mode Liste

    En mode Détails

    Faites glisser une collection ou des éléments d'une collection sur une zone vide de la planche graphique.

    Un objet ListBox est créé pour afficher les données, à raison d’un enregistrement par ligne. La propriété ItemsSource de l’objet ListBox est définie sur le nom de la collection. La propriété DataContext est définie dans le panneau de disposition parent.

    Pour obtenir un exemple, consultez Créer une liaison de données liste-détails.

    Les objets sont créés pour afficher tous les éléments sélectionnés pour un seul enregistrement de la collection de données.

    Si vous faites cela après avoir fait glisser les éléments depuis la même collection en mode Liste, une relation liste-détails est automatiquement configurée.

    Pour plus d'informations, consultez Créer une liaison de données liste-détails.

    Si vous n'avez pas créé de liaison précédemment en mode Liste, seules les données provenant du premier enregistrement de la collection sont affichées.

    Faites glisser une collection hiérarchique ou des éléments d'une collection hiérarchique sur une zone vide de la planche graphique.

    Un objet TreeView est créé pour afficher les données, à raison d’un enregistrement par ligne. La propriété ItemsSource de l’objet TreeView est définie sur le nom de la collection. La propriété DataContext est définie dans le panneau de disposition parent.

    Pour obtenir un exemple, consultez Utiliser le contrôle TreeView.

    Les objets sont créés pour afficher tous les éléments sélectionnés pour un seul enregistrement de la collection de données.

    Si vous faites cela après avoir fait glisser les éléments depuis la même collection en mode Liste, une relation liste-détails est automatiquement configurée.

    Pour plus d'informations, consultez Créer une liaison de données liste-détails.

    Si vous n'avez pas créé de liaison précédemment en mode Liste, seules les données provenant du premier enregistrement de la collection sont affichées.

    Faites glisser une collection ou des éléments d’une collection sur un contrôle d’éléments existant, tel que ListBox, DataGrid, TreeView, ComboBox, etc.

    Le contrôle éléments affiche les données, à raison d'un enregistrement par ligne. La propriété ItemsSource du contrôle d’éléments est définie sur le nom de la collection. La propriété DataContext est définie dans le panneau de disposition parent.

    Pour obtenir un exemple, consultez Utiliser le contrôle DataGrid.

    Les objets sont créés pour afficher tous les éléments sélectionnés pour un seul enregistrement de la collection de données.

    Si vous faites cela après avoir fait glisser les éléments depuis la même collection en mode Liste, une relation liste-détails est automatiquement configurée.

    Pour plus d'informations, consultez Créer une liaison de données liste-détails.

    Si vous n'avez pas créé de liaison précédemment en mode Liste, seules les données provenant du premier enregistrement de la collection sont affichées.

    Faites glisser un seul élément de données ne figurant pas dans une collection sur une zone vide de la planche graphique.

    Un objet est créé pour afficher les données. Par exemple, si les données sont une chaîne ou un numéro, un objet TextBlock est créé. Si les données correspondent à une valeur booléenne, un objet CheckBox est créé. Si les données correspondent au tracé d’un fichier image, l’image s’affiche dans un objet Image.

    Identique au mode Liste.

    Faites glisser un seul élément de données ne figurant pas dans une collection sur un objet existant.

    Blend tente de déterminer à quelle propriété de l'objet les données devraient être liées. Par exemple, si les données correspondent à une chaîne ou un numéro, elles sont liées à une propriété Content ou Text. Si les données correspondent à une valeur booléenne, elles sont liées à une propriété IsEnabled ou IsChecked ou une autre propriété booléenne. Si les données correspondent au tracé d’un fichier image, elles sont liées à une propriété Source.

    Si aucune propriété appropriée n'est trouvée, la boîte de dialogue Créer une liaison de données apparaît. Dans la liste déroulante Propriété de de la boîte de dialogue Créer une liaison de données, vous pouvez choisir la propriété à laquelle lier les données. Par exemple, si les données sont une chaîne représentant une valeur hexadécimale pour une couleur, vous pouvez faire glisser l'élément sur l'objet racine de votre document tout en maintenant enfoncée la touche Maj, puis sélectionner la propriété Arrière-plan dans la boîte de dialogue Créer une liaison de données pour modifier la couleur d'arrière-plan de votre document.

    Identique au mode Liste.

Pour lier des données à l’aide du panneau Propriétés

  1. Dans le panneau Objets et chronologie, sélectionnez l'objet dans lequel vous souhaitez afficher ou auquel vous souhaitez lier les données, ou sélectionnez un objet plus élevé dans l'arborescence, tel que le panneau de disposition parent.

    Vous verrez alors le contexte de données.

    Conseil Conseil

    Vous pouvez également cliquer avec le bouton droit sur un objet dans le panneau Objets et chronologie. Si l’élément est un contrôle de contenu, sélectionnez Lier le contenu aux données. Si l’élément est un contrôle d’éléments, sélectionnez Lier ItemsSource aux données. Si vous suivez ce conseil, passez à l’étape 3 pour continuer.

  2. Dans le panneau Propriétés, à côté de la propriété DataContext, cliquez sur Options avancées JJ170055.12e06962-5d8a-480d-a837-e06b84c545bb(fr-fr,VS.120).png, puis cliquez sur Liaison de données.

  3. Dans la boîte de dialogue Créer une liaison de données, cliquez sur l'onglet Champ de données.

  4. Sous Sources de données, sélectionnez la source de données à partir de laquelle vous souhaitez lier les données.

  5. Cliquez sur OK pour fermer la boîte de dialogue Créer une liaison de données.

    Vous pouvez maintenant lier les propriétés de cet objet ou de tout objet enfant aux éléments de données figurant dans la source de données que vous avez sélectionnée.

  6. Sélectionnez l'objet dans lequel vous souhaitez afficher ou auquel vous souhaitez lier les données.

  7. Dans le panneau Propriétés, recherchez la propriété à laquelle vous souhaitez lier les données. Assurez-vous que le type de propriété est compatible avec le type de l'élément de données que vous souhaitez lier. Par exemple, pour effectuer une liaison avec des éléments de données dans une collection, sélectionnez la propriété ItemsSource (disponible dans des contrôles d’éléments tels que ListBox, DataGrid, TreeView, ComboBox, etc.). Pour effectuer une liaison avec une chaîne ou un élément de données numérique, sélectionnez une propriété de chaîne.

  8. Cliquez sur Options avancées JJ170055.12e06962-5d8a-480d-a837-e06b84c545bb(fr-fr,VS.120).png, puis cliquez sur Liaison de données.

  9. Dans la boîte de dialogue Créer une liaison de données, cliquez sur l'onglet Contexte de données explicite.

  10. Sous Champs, sélectionnez l'élément de données auquel vous souhaitez lier la propriété.

    Conseil Conseil

    Seuls les éléments de données compatibles seront affichés. Pour afficher tous les éléments, sélectionnez Toutes les propriétés dans la liste déroulante Afficher.

  11. Vous pouvez définir d'autres champs dans la boîte de dialogue Créer une liaison de données. Par exemple, vous devrez peut-être sélectionner un convertisseur de valeur si le type de données ne correspond pas au type de propriété. Blend tente de convertir des données, mais si la conversion ne peut pas être effectuée, les données ne seront pas affichées. Dans ce cas, vous devrez créer un convertisseur de valeur et le sélectionner dans la boîte de dialogue Créer une liaison de données.

    Pour plus d'informations, consultez Essayez ! Convertir des données d'un type vers un autre.

  12. Cliquez sur OK pour fermer la boîte de dialogue Créer une liaison de données.

  13. Si vous utilisez un exemple de données, les données seront affichées sur la planche graphique. Si vous utilisez des données en direct, appuyez sur F5 pour les visualiser.

    Conseil Conseil

    Vous pouvez lier les mêmes données à plusieurs objets. Vous pouvez également configurer un modèle liste-détails dans lequel un objet est mis à jour pour afficher les détails d’un élément sélectionné dans une liste.

    Pour plus d'informations, consultez Créer une liaison de données liste-détails.

Afficher: