Partager via


Exemple de liaison de données LINQ to XML

Cet article décrit l’exemple LinqToXmlDataBinding, une application WPF (Windows Presentation Foundation) qui lie des composants d’interface utilisateur à une source de données XML incorporée.

Aperçu

L’exemple LinqToXmlDataBinding est une application WPF (Windows Presentation Foundation) qui contient des fichiers sources C# et XAML. Un document XML incorporé définit une liste de livres. L’application permet à l’utilisateur d’afficher, d’ajouter, de supprimer et de modifier les entrées du livre.

Il existe deux fichiers sources principaux :

  • L2DBForm.xaml contient le code de déclaration XAML de l’interface utilisateur de la fenêtre principale. Il contient également une section de ressource de fenêtre qui définit un fournisseur de données et un document XML incorporé pour les listes de livres.

  • L2DBForm.xaml.cs contient les méthodes d’initialisation et de gestion des événements associées à l’interface utilisateur.

La fenêtre principale est divisée en quatre sections d’interface utilisateur verticales suivantes :

  • XML affiche la source XML brute de la liste de livres incorporés.

  • La liste de livres affiche les entrées de livre sous forme de texte standard et permet à l’utilisateur de sélectionner et de supprimer des entrées individuelles.

  • Modifier le livre sélectionné permet à l’utilisateur de modifier les valeurs associées à l’entrée de livre actuellement sélectionnée.

  • Ajouter un nouveau livre permet de créer une entrée de livre en fonction des valeurs entrées par l’utilisateur.

Exécuter l’exemple

Cette section montre comment créer et générer le projet LinqToXmlDataBinding dans Visual Studio et comment exécuter l’application LinqToXmlDataBinding Windows Presentation Foundation (WPF) résultante.

Créer le projet

  1. Ouvrez Visual Studio et créez une application WPF C# nommée LinqToXmlDataBinding.

    Le projet doit cibler .NET Framework 3.5 (ou version ultérieure).

  2. S’il n’est pas déjà présent, ajoutez des références de projet pour les assemblys .NET suivants :

    • System.Data
    • System.Data.DataSetExtensions
    • System.Xml
    • System.Xml
  3. Générez la solution en appuyant sur Ctrl+Maj+B, puis exécutez-la en appuyant sur F5.

    Le projet doit être compilé sans erreur et exécuté en tant qu’application WPF générique.

Ajout de code

  1. Dans l’Explorateur de solutions, renommez le fichier source Window1.xaml en L2XDBForm.xaml.

    Le fichier source dépendant Window1.xaml.cs est automatiquement renommé en L2XDBForm.xaml.cs.

  2. Remplacez le code source trouvé dans le fichier L2XDBForm.xaml par le code source L2DBForm.xaml. Utilisez la vue source XAML pour utiliser ce fichier.

  3. De même, remplacez la source dans L2XDBForm.xaml.cs par le code source L2DBForm.xaml.cs.

  4. Dans le fichier App.xaml, remplacez toutes les occurrences de la chaîne Window1.xaml par L2XDBForm.xaml.

  5. Générez la solution en appuyant sur Ctrl+Maj+B.

Exécuter l’application

L’application LinqToXmlDataBinding permet à l’utilisateur d’afficher et de manipuler une liste de livres stockés en tant qu’élément XML incorporé. Exécutez l’application en appuyant sur F5 (Démarrer le débogage) ou Ctrl+F5 (Démarrer sans débogage).

Une fenêtre de programme avec le titre WPF Data Binding à l’aide de LINQ to XML s’affiche.

La section supérieure de l’interface utilisateur affiche le code XML brut qui représente la liste des livres. Il s’affiche à l’aide d’un contrôle WPF TextBlock , qui n’active pas l’interaction par le biais de la souris ou du clavier.

La deuxième section verticale, intitulée Liste de livres, affiche les livres sous forme de liste triée en texte brut. Il utilise un ListBox contrôleur qui permet la sélection via la souris ou le clavier.

Ajouter et supprimer des livres

Pour ajouter un nouveau livre à la liste, entrez des valeurs dans les contrôles ID et ValeurTextBox de la dernière section, Ajoutez un nouveau livre, puis sélectionnez Ajouter un livre. Le livre est ajouté à la liste à la fois dans le livre et les listes XML. Ce programme ne valide pas les valeurs d’entrée.

Pour supprimer un livre existant de la liste, sélectionnez-le dans la section Liste de livres , puis sélectionnez Supprimer le livre sélectionné. L'entrée du livre est supprimée à la fois du livre et des listes de sources XML brutes.

Modifier une entrée de livre

  1. Sélectionnez l’entrée de livre dans la deuxième section Liste de livres .

    Ses valeurs actuelles sont affichées dans la section Modifier le livre sélectionné .

  2. Modifiez les valeurs à l’aide du clavier. Dès que l’un ou l’autre TextBox contrôle perd le focus, les modifications sont automatiquement propagées à la source XML et aux listes de livres.