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 :

Ajouter des boutons en tant qu'items dans listview


Sujet :

VB.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre du Club
    Homme Profil pro
    Collégien
    Inscrit en
    Août 2019
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Collégien

    Informations forums :
    Inscription : Août 2019
    Messages : 7
    Par défaut Ajouter des boutons en tant qu'items dans listview
    Bonsoir, je programme en visual basic un petit logiciel qui doit afficher une liste (listbox ou listview) contenants des fichiers d'un repertoire prédefinie, je voudrais que les items de la liste soient des boutons avec l'icone et le nom du fichier correspondant mais je n'arrive pas a mettre les botons dans les listviewItems. Je n'arrive a les afficher qu'en tant que control et dans ce cas je peux pas defiler avec la scrollbar. Est ce que vous pouvez m'aidez ?

    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
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    ListView1.View = View.Tile
    ListView1.FullRowSelect = True
           Dim fileNames1 = My.Computer.FileSystem.GetFiles(
        FolderBrowserDialog1.SelectedPath, FileIO.SearchOption.SearchTopLevelOnly, "*.*")
     
     
    For Each fileName1 As String In fileNames1
     
     
                           Dim fi As New FileInfo(fileName1)
        'On récupère l'icone associé au fichier
        Dim iconFile = System.Drawing.Icon.ExtractAssociatedIcon(fi.FullName)
        'On instancie un listviewitem
     
                     Dim fileInfo = My.Computer.FileSystem.GetFileInfo(fileName1)
        Dim FichierInfo As System.IO.FileInfo = New System.IO.FileInfo(fileName1)
     
     
         Dim buttonElement As New Button
     
     
     
        Dim lvi As New ListViewItem(fi.Name)
     
     
        buttonElement.Text = fi.Name
        buttonElement.Font = New Font("Lucida Console", 11)
        buttonElement.Image = iconFile.ToBitmap
        buttonElement.ImageAlign = ContentAlignment.TopLeft
        buttonElement.TextAlign = ContentAlignment.TopLeft
        buttonElement.TextImageRelation = TextImageRelation.ImageBeforeText
        buttonElement.Width = ListView1.Width - 4
        buttonElement.Height = 120
        buttonElement.Parent = ListView1
     
     
        ListView1.Controls.Add(buttonElement)
     
        buttonElement.Show()
     
    Next

  2. #2
    Membre Expert
    Avatar de wallace1
    Homme Profil pro
    Administrateur systèmes
    Inscrit en
    Octobre 2008
    Messages
    1 966
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Administrateur systèmes
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Octobre 2008
    Messages : 1 966
    Billets dans le blog
    7
    Par défaut
    Salut,

    Salut j avais utilisé cet exemple (en c#) il y a un moment :
    https://www.codeproject.com/Articles...-in-a-ListView

    Ou alors il te faudra utiliser un Datagridview.

    Bon codage++

  3. #3
    Membre du Club
    Homme Profil pro
    Collégien
    Inscrit en
    Août 2019
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Collégien

    Informations forums :
    Inscription : Août 2019
    Messages : 7
    Par défaut
    Je ne comprends comment adapter ce code en c# vers visual basic. Vous pourriez l'indiquer comment faire avec la datagridview ?

  4. #4
    Membre Expert
    Avatar de wallace1
    Homme Profil pro
    Administrateur systèmes
    Inscrit en
    Octobre 2008
    Messages
    1 966
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Administrateur systèmes
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Octobre 2008
    Messages : 1 966
    Billets dans le blog
    7
    Par défaut
    Pour convertir du code c#<>vbnet :
    https://converter.telerik.com/

    En ce qui concerne le dgv , un exemple ici:
    http://vb.net-informations.com/datag...iew_button.htm

    Puis je suppose que tes boutons auront chacun un evenement Click lié à leur Row parent respectif donc n' oublies pas d'abonner dynamiquement un event OnClick pour chaque bouton instancié.

    Bon codage++

  5. #5
    Membre expérimenté
    Homme Profil pro
    IT Manager
    Inscrit en
    Janvier 2018
    Messages
    220
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : Belgique

    Informations professionnelles :
    Activité : IT Manager
    Secteur : Santé

    Informations forums :
    Inscription : Janvier 2018
    Messages : 220
    Par défaut
    Bonjour,

    Je pense qu'un datagridview est vraiment plus adapté pour ça.
    Ici quelques bouts de codes qui vont t'aider :

    Ajouter une colonne contenant un bouton :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
            Dim btn As DataGridViewButtonColumn = New DataGridViewButtonColumn()
            btn.Text = "Texte du bouton"
            btn.UseColumnTextForButtonValue = True
            DatagridView1.Columns.Add(btn)
    Pour détecter le clic sur le bouton il faut mettre ceci dans l'event CellContentClick du datagridview :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
            If e.ColumnIndex = Numero_de_colonne_qui_contient_le_bouton Then
                   'Ici le code à exécuter
            End If

Discussions similaires

  1. Ajouter des boutons dans une classe ?
    Par djmahdouch dans le forum Composants graphiques
    Réponses: 2
    Dernier message: 28/01/2013, 17h14
  2. ajouter des boutons dans un datagrid
    Par scudhit dans le forum Flex
    Réponses: 18
    Dernier message: 06/09/2010, 13h54
  3. [Toutes versions] Ajouter des boutons commandes dans la barre de menus
    Par Serge77144 dans le forum Access
    Réponses: 2
    Dernier message: 17/05/2009, 09h38
  4. ajouter des boutons dans la barre des boutons
    Par kespy13 dans le forum Eclipse Platform
    Réponses: 1
    Dernier message: 08/04/2008, 14h54

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