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 :

Déterminer la valeur d'une propriété d'un HierarchicalDataTemplate en fonction d'une autre propriété


Sujet :

Windows Presentation Foundation

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Février 2003
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2003
    Messages : 2
    Par défaut Déterminer la valeur d'une propriété d'un HierarchicalDataTemplate en fonction d'une autre propriété
    Bonjour,

    Je cherche à tester la propriété ElementType qui provient d'un Enum (afficher ici pour test) pour déterminer la valeur de Image.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    <TreeView.Resources>
      <HierarchicalDataTemplate DataType="{x:Type tmData:Element}" ItemsSource="{Binding Elements}">
        <StackPanel Orientation="Horizontal">
          <Image Width="16" Height="16" Margin="3,0" Source="..\Images\Test1.png" />
          <TextBlock Text="{Binding Name}" />
          <TextBlock Text="{Binding Path=ElementType}" />
        </StackPanel>
      </HierarchicalDataTemplate>
    </TreeView.Resources>
    J'ai cherché sans succès du côté de ItemsControl.ItemsPanel mais cela masque le comportement défini dans un TreeView.ItemContainerStyle où je fait la gestion de IsExpanded, IsSelected, etc.

    Je me demande si je ne dois pas déterminer ce comportement au niveau du code behind.

    Merci de vos idées.
    Lume

  2. #2
    Membre expérimenté

    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    214
    Détails du profil
    Informations personnelles :
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Septembre 2005
    Messages : 214
    Par défaut
    Pourquoi ne pas utiliser un DataTrigger ?

  3. #3
    Candidat au Club
    Profil pro
    Inscrit en
    Février 2003
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2003
    Messages : 2
    Par défaut
    Merci bien Jérem22, c'est tout à fait ce qu'il me fallait.

    Le code de mon HierarchicalDataTemplate avec DataTrigger.


    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
    21
    22
    23
    24
    <TreeView.Resources>
      <HierarchicalDataTemplate DataType="{x:Type tmData:Element}" ItemsSource="{Binding Elements}">
        <StackPanel Orientation="Horizontal">
          <Image Name="Image2"  Width="16" Height="16" Margin="3,0">
            <Image.Style>
              <Style TargetType="Image">
                <Style.Triggers>
                  <DataTrigger Binding="{Binding Path=ElementType}" Value="Node">
                    <Setter Property="Source" Value="..\Images\Node.png" />
                  </DataTrigger>
                  <DataTrigger Binding="{Binding Path=ElementType}" Value="ControlList">
                    <Setter Property="Source" Value="..\Images\ControlList.png" />
                  </DataTrigger>
                  <DataTrigger Binding="{Binding Path=ElementType}" Value="Task">
                    <Setter Property="Source" Value="..\Images\Task.png" />
                  </DataTrigger>
                </Style.Triggers>
              </Style>
            </Image.Style>
          </Image>
          <TextBlock Text="{Binding Path=Name}" />
        </StackPanel>
      </HierarchicalDataTemplate>
    </TreeView.Resources>

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 5
    Dernier message: 26/03/2015, 23h38
  2. Réponses: 2
    Dernier message: 12/06/2014, 15h18
  3. Réponses: 3
    Dernier message: 31/01/2014, 08h19
  4. Placer une image sur la page en fonction d'une valeur
    Par D4rkArthemis dans le forum BIRT
    Réponses: 3
    Dernier message: 19/04/2011, 16h03
  5. une Dll peut elle utiliser les fonctions d'une autre dll?
    Par kantelise dans le forum Windows
    Réponses: 7
    Dernier message: 18/05/2006, 03h45

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