IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Windows Presentation Foundation Discussion :

affiché les attributs d'un fichier xml dans un treeview


Sujet :

Windows Presentation Foundation

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Février 2009
    Messages
    21
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Février 2009
    Messages : 21
    Points : 32
    Points
    32
    Par défaut affiché les attributs d'un fichier xml dans un treeview
    Salut à tous !

    Je n'arrive pas à afficher les valeurs de mon fichier xml.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    <ROOT Source="xyz" Features_List="Features List">
    <node>
      <Childs Entryno="7" Description="Chaos"/>
      <node> 
        <Childs Entryno="14" Description="Gaea"/>
        <node>
          <Childs Entryno="25" Description="Mountains"/>
          <node>
            <Childs Entryno="8" Description="Coeus + Phoebe"/>
            <Childs Entryno="9" Description="Cronus + Rhea"/>
          </node>
    le fichier xml n'est pas fini mais il n'y a pas d'intérêt à vous montrer la suite ...

    ensuite ma partie xaml

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
     
     <HierarchicalDataTemplate x:Key="NodeTemplate">
            <TextBlock x:Name="tb"/>
            <HierarchicalDataTemplate.ItemsSource>
                <Binding XPath="child::node()" />
            </HierarchicalDataTemplate.ItemsSource>
            <HierarchicalDataTemplate.Triggers>
                <DataTrigger Binding="{Binding Path=NodeType}" Value="Text">
                    <Setter TargetName="tb" Property="Text" Value="{Binding Path=Value}"></Setter>
                </DataTrigger>
                <DataTrigger Binding="{Binding Path=NodeType}" Value="Element">
                    <Setter TargetName="tb" Property="Text" Value="{Binding Path=Name}"></Setter>
                </DataTrigger>
            </HierarchicalDataTemplate.Triggers>
        </HierarchicalDataTemplate>
        <XmlDataProvider x:Key="xmlDP" />
        </UserControl.Resources>
        <TreeView  Name="tv"
                   ItemTemplate= "{StaticResource NodeTemplate}"
                   ItemsSource="{Binding Source={StaticResource xmlDP},XPath=*}" Background="#FFDBDBFC" />
    et la partie c#

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    private void UpdateTree()
            {
                XmlDocument doc = new XmlDocument();
                //load the xml from xy
                doc.LoadXml(XmlTreeData);
     
                XmlDataProvider dp = (XmlDataProvider)this.treeViewer1.FindResource("xmlDP");
                //transfrom the xml in dataprovider
     
                dp.Document = doc;
                dp.XPath = "*";
     
            }
    comme résultat je n'ai que la structure de mon ficher xml avec
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    node
      child
        node 
    ...
    j'ai essayé de modifier les datatrigger et les setter ... mais sans succès ... je n'arrive pas à afficher la description.

    merci de votre aide.

    Bonne journée !


  2. #2
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Février 2009
    Messages
    21
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Février 2009
    Messages : 21
    Points : 32
    Points
    32
    Par défaut
    personne ne peut m'aider ?
    j'ai changé ma structure de mon XML ... je n'ai plus les Node, mais les childs sont imbriqué l'un dans l'autre ... ce qui ne change rien à mon problème ...

    merci et bonne journée

  3. #3
    Invité
    Invité(e)
    Par défaut
    Si j'ai bien compris t'arrive à afficher les différentes propriétés par le Binding sauf pour la propriété Description ?

  4. #4
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Février 2009
    Messages
    21
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Février 2009
    Messages : 21
    Points : 32
    Points
    32
    Par défaut
    non enfaite, je n'arrive à afficher aucun attribut. C'est uniquement Child et node qui viennent afficher avec la même structure que mon fichier XML.

    J'ai regardé dans plein d'endroits comment afficher un attribut dans un treeview, mais tous les exemples que j'ai regardé n'ont pas fonctionné pour moi. Je suis un peu perdu.

    Merci et bonne journée !


  5. #5
    Invité
    Invité(e)
    Par défaut
    Je pense cela est du au fait que le contrôle treeview ne possède pas de DataTemplate.
    Il va falloir définir un modèle.

  6. #6
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Février 2009
    Messages
    21
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Février 2009
    Messages : 21
    Points : 32
    Points
    32
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    <HierarchicalDataTemplate x:Key="NodeTemplate">
            <TextBlock x:Name="tb"/>
            <HierarchicalDataTemplate.ItemsSource>
                <Binding XPath="child::node()" />
            </HierarchicalDataTemplate.ItemsSource>
    ce n'est pas ça ?

    je vais me renseigner sur ces datatemplates. Merci pour ton aide.

    Bonne journée !


Discussions similaires

  1. Réponses: 2
    Dernier message: 22/02/2009, 13h02
  2. [DOM] Afficher les elements d'un fichier xml sur une interface
    Par Viscapon dans le forum Format d'échange (XML, JSON...)
    Réponses: 7
    Dernier message: 07/05/2008, 22h40
  3. [DOM] Récupérer les attributs d'un fichier XML en PHP
    Par ePsymon dans le forum Bibliothèques et frameworks
    Réponses: 2
    Dernier message: 08/02/2008, 11h51
  4. Réponses: 2
    Dernier message: 15/07/2007, 12h43
  5. [XSLT] Inclure les données d'un fichier XML dans un fichier
    Par SimOOn dans le forum Bibliothèques et frameworks
    Réponses: 2
    Dernier message: 20/04/2007, 16h26

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo