Partage
  • Partager sur Facebook
  • Partager sur Twitter

[WPF] Tableau horizontal à taille variable

Tableau horizontal alimenté automatiquement par une source de donnée

    15 mai 2018 à 17:37:36

    Bonjour à tous,

    Je me torture l'esprit jour et nuit depuis 2 jours à trouver une solution à mon problème, sans résultat.

    Je vais tenté d'être clair et précis sur celui-ci.

    Contexte :

    J'ai besoin de lister de gauche à droite une série de contrôle (des graphiques dans mon cas mais cela peut être de simple textbox).

    Le nombre de ces contrôles et leur contenu doit dépendre d'une source de donnée extérieur ( BDD, fichier etc..) afin de limiter les modifications en cas d'ajout ou suppression d'un item.

    Exemple :

    J'ai une liste de TextBox que je souhaite placer dans un StackPanel d'orientation horizontal.

    En temps normal j'aurais fait comme ceci : 

    <ScrollViewer  
                Width="400" 
                Height="150" 
                CanContentScroll="True" 
                HorizontalScrollBarVisibility="Visible" 
                VerticalScrollBarVisibility="Hidden">
    <StackPanel Orientation="Horizontal" Width="1000" Height="1000" Name="MyStackPanel">
          <TextBox Width="80">Data Item 1
          </TextBox>
          <TextBox Width="80">Data Item 2
          </TextBox>
          <TextBox Width="80">Data Item 3
          </TextBox>
    </StackPanel>
    </ScrollViewer>

    Et j'aurais obtenu quelque chose comme ça : Data Item 1 | Data Item 2 | Data Item 3

    Mais là en ne connaissant pas d'avance le nombre de TextBox je dois certainement partir sur du Binding pour obtenir du dynamique !

    Malheureusement, j'ai tenté de passer par un ItemsControl et un DataTemplate mais le seul résultat que j'arrive à obtenir est celui-ci :

    Data Item 1 |

    Data Item 2 |

    Data Item 3 | 

    L'itemsControl ne fait que boucler sur la même cellule, le StackPanel considère l'ItemsControl comme un seul élément :(

    Je vous épargne le nombre code pioché à droite à gauche à grand coup de Grid, DataGrid, ListView etc que j'ai pu trouver et tester sans obtenir ce que je veux.

    L'utilisation d'un StackPanel est uniquement dû au faite que je peux travailler l'orientation du listage via l'attribut du même nom.  

    Savez-vous comment je peux obtenir un listage de ce type Data Item 1 | Data Item 2 | Data Item 3 de manière totalement dynamique ?

    Merci à vous !

    Cordialement,

    Gine

    • Partager sur Facebook
    • Partager sur Twitter
      22 mai 2018 à 13:19:04

      Il nous faudrait le code que tu as fait pour utiliser l'ItemsControl...Car c'est effectivement avec ce contrôle et via des bindings que tu pourras faire ce que tu veux.
      • Partager sur Facebook
      • Partager sur Twitter

      [WPF] Tableau horizontal à taille variable

      × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
      × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
      • Editeur
      • Markdown