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

VB.NET Discussion :

[VB-WPF] - Ajouter un controle dans un item d'une listview ? [Débutant]


Sujet :

VB.NET

  1. #1
    Membre éprouvé
    Avatar de troxsa
    Inscrit en
    Novembre 2004
    Messages
    388
    Détails du profil
    Informations personnelles :
    Âge : 51

    Informations forums :
    Inscription : Novembre 2004
    Messages : 388
    Par défaut [VB-WPF] - Ajouter un controle dans un item d'une listview ?
    Bonjour a tous,

    Connaissant bien VB.net (form) je me met au WPF, je débute ...

    Je recherche comment faire pour ajouter un controle dans un des items d'une listview, le contrôle pourrait être un button ou un textbox, ou tout autre contrôle.

    (j'aimerai si possible que ce code soit écrit en vb, et moins le XAML)

    Avez des solutions ?
    En vous remerciant d'avance

  2. #2
    Membre émérite Avatar de yonpo
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mars 2010
    Messages
    617
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2010
    Messages : 617
    Par défaut
    Salut,

    Pour cela, il faut utiliser un DataTemplate.

  3. #3
    Membre éprouvé
    Avatar de troxsa
    Inscrit en
    Novembre 2004
    Messages
    388
    Détails du profil
    Informations personnelles :
    Âge : 51

    Informations forums :
    Inscription : Novembre 2004
    Messages : 388
    Par défaut
    Merci de vous intéresser au problème

    J'ai regardé sur différent site internet le DataTemplate et j'ai pas trop compris comment il fonctionne vu que c'est une spécification wpf c'est encore dur pour moi a comprendre le mécanisme.

    Pourriez vous me faire un exemple simple avec juste deux columns et deux items avec un button ?

    Je vais continuer mes recherches sur le net en attendant :p

    merci

  4. #4
    Membre émérite Avatar de yonpo
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mars 2010
    Messages
    617
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2010
    Messages : 617
    Par défaut
    Voici un exemple simple, avec une ListView à deux colonnes et un Template spécifique pour les cellules.
    Code c# : 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
     
    public partial class MainWindow : Window
        {
            public List<Toto> Liste { get; set; }
     
            public MainWindow()
            {
                InitializeComponent();
                Liste = new List<Toto>();
                Liste.Add(new Toto() { A = "Toto1", B = 20 });
                Liste.Add(new Toto() { A = "Toto2", B = 70 });
                this.DataContext = this;
            }
        }
     
        public class Toto
        {
            public string A { get; set; }
            public int B { get; set; }
        }

    Code xaml : 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
    25
    26
    27
    28
    29
    30
    31
     
    <ListView ItemsSource="{Binding Liste}">
                <ListView.View>
                    <GridView>
                        <GridViewColumn Header="Prop A">
                            <GridViewColumn.CellTemplate>
                                <DataTemplate>
                                    <Border Margin="2" Background="Bisque">
                                        <StackPanel Margin="5" Orientation="Horizontal">
                                            <TextBlock Text="{Binding A}" Margin="2" VerticalAlignment="Center"/>
                                            <Button Content="Button" Margin="2" Width="90"/>
                                        </StackPanel>
                                    </Border>
                                </DataTemplate>
                            </GridViewColumn.CellTemplate>
                        </GridViewColumn>
                        <GridViewColumn Header="Prop B">
                            <GridViewColumn.CellTemplate>
                                <DataTemplate>
                                    <Border Margin="2" Background="Bisque">
                                        <StackPanel Margin="5" Orientation="Horizontal">
                                            <TextBlock Text="{Binding B}" Margin="2" VerticalAlignment="Center"/>
                                            <Button Content="Button" Margin="2" Width="90"/>
                                        </StackPanel>
                                    </Border>
                                </DataTemplate>
                            </GridViewColumn.CellTemplate>
                        </GridViewColumn>
                    </GridView>
                </ListView.View>
            </ListView>

    On créé une liste de Toto comportant 2 éléments. On utilise le Binding pour spécifier au ListView quelle est la source de données.
    Ensuite, on définis 2 DataTemplate pour les cellules de chaque colonnes.

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

Discussions similaires

  1. Comment ajouter plusieurs données dynamiques dans un item d'une listview
    Par Rohan21 dans le forum Composants graphiques
    Réponses: 2
    Dernier message: 02/08/2014, 16h50
  2. Evènement clic bouton dans un item d'une ListView
    Par koukou11 dans le forum Composants graphiques
    Réponses: 11
    Dernier message: 12/05/2012, 15h21
  3. Réponses: 1
    Dernier message: 05/10/2009, 03h50
  4. ajouter des control dans une onglet de sstab sous VB6
    Par aymane_farissi dans le forum VB 6 et antérieur
    Réponses: 3
    Dernier message: 26/09/2005, 13h44
  5. [VC++ 6.0] ajout de control dans l'IDE
    Par gargle dans le forum MFC
    Réponses: 7
    Dernier message: 25/08/2005, 09h33

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