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 :

Affichage auto dans listview


Sujet :

VB.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Inscrit en
    Mai 2004
    Messages
    304
    Détails du profil
    Informations personnelles :
    Âge : 71

    Informations professionnelles :
    Secteur : Santé

    Informations forums :
    Inscription : Mai 2004
    Messages : 304
    Par défaut Affichage auto dans listview
    Bonjour
    A l'ouverture d'un form j'affiche une listview que je crée avec ce code
    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
     Public Function Init_SansDN()
            ListViewActeursSansDN.Items.Clear()
            ListViewActeursSansDN.Columns.Clear()
            Me.ListViewActeursSansDN.ListViewItemSorter = Nothing
            Dim MyConnexion As OleDbConnection = New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data source=" & _
                         "C:\Access\DvdData.mdb")
            Dim Mycommand As OleDbCommand = MyConnexion.CreateCommand()
     
            Mycommand.CommandText = "SELECT N°,Code FROM Acteurs WHERE Naissance is null ORDER BY Code"
     
            MyConnexion.Open()
     
            Dim myReader As OleDbDataReader = Mycommand.ExecuteReader()
            ListViewActeursSansDN.View = View.Details
            With ListViewActeursSansDN.Columns
                .Add("N°", 45, HorizontalAlignment.Left)
                .Add("Acteurs et actrices", 320, HorizontalAlignment.Left)
            End With
            Do While myReader.Read()
                Dim _MyListViewItem As ListViewItem = New ListViewItem(Format(myReader.GetValue(0), "0000"))
                With _MyListViewItem
                    .SubItems.Add(myReader.GetValue(1).ToString)
                End With
                ListViewActeursSansDN.Items.Add(_MyListViewItem)
            Loop
            myReader.Close()
            MyConnexion.Close()
            PictureBoxActeurSansDN.Image = Nothing
            Return Nothing
        End Function
    et ensuite

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Private Sub ActeursSansDN(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
            Init_SansDN()
            Me.Text = "Acteurs et actrices sans date de naissance"
        End Sub
    J'aimerais que la première ligne de cette liste soit sélectionnée à l'ouverture du form
    J'ai essayé ça à la fin du code d'ouverture du form mais ça ne change rien
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ListViewActeursSansDN.Items(0).Selected = True
    Mais ça ne fait rien de plus

    Ensuite en cliquant sur une ligne j'affiche une image correspondant à la ligne

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Private Sub ListViewActeursSansDN_MouseClick(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles ListViewActeursSansDN.MouseClick
            Dim ItemSelected As ListView.SelectedListViewItemCollection = ListViewActeursSansDN.SelectedItems
            Dim TexteDansLaDEUXIEMEColonne As String = ItemSelected(0).SubItems(1).Text
            CheminActeurSansDN.Text = "C:\PhotoActeur\" & TexteDansLaDEUXIEMEColonne & ".jpg"
        End Sub
    Plutôt que de cliquer sur chaque ligne j'aimerais pouvoir utiliser les flèches de direction du clavier
    Cela marche mais je suis obligé quand même de cliquer pour voir l'image
    Auriez-vous une solution à ces deux problèmes
    Merci d'avance

  2. #2
    Modérateur

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    1 722
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 722
    Par défaut
    Bonjour,

    Citation Envoyé par Jean-Luc80 Voir le message
    J'aimerais que la première ligne de cette liste soit sélectionnée à l'ouverture du form
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
            ListViewActeursSansDN.Items(0).Focused = True
            ListViewActeursSansDN.Items(0).Selected = True
    avec FullRowSelect à false.
    __________________________

    Citation Envoyé par Jean-Luc80 Voir le message
    Plutôt que de cliquer sur chaque ligne j'aimerais pouvoir utiliser les flèches de direction du clavier
    Avec l'évènement ItemSelectionChanged
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
        Private Sub ListView1_ItemSelectionChanged(sender As System.Object, e As System.Windows.Forms.ListViewItemSelectionChangedEventArgs) Handles ListView1.ItemSelectionChanged
            If e.Item.Focused AndAlso e.Item.Selected Then
                '... e.ItemIndex donne l'index
            End If
        End Sub
    Traductions d'articles :
    La mémoire en .NET - Qu'est-ce qui va où ?
    Architecture DAL de haute performance et DTO ; Version C# : Partie 1,Partie 2,Partie 3 — Version VB.NET : Partie 1,Partie 2,Partie 3
    N'hésitez pas à consulter la FAQ VB.NET, le cours complet de Philippe Lasserre et tous les cours, articles et tutoriels.

  3. #3
    Membre éclairé
    Inscrit en
    Mai 2004
    Messages
    304
    Détails du profil
    Informations personnelles :
    Âge : 71

    Informations professionnelles :
    Secteur : Santé

    Informations forums :
    Inscription : Mai 2004
    Messages : 304
    Par défaut
    Bonjour et merci de tes réponses
    ça fonctionne bien avec les flèches du pavé directionnel
    Par contre la 1ère ligne est bien activée au démarrage ( la photo s'affiche bien)
    mais la ligne n'est pas en surbrillance
    Est-ce normal ?

  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
    bonjour,

    La propriété FullRowSelect de ListViewActeursSansDN doit être paramétrée à True.

    a+

Discussions similaires

  1. Affichage données dans listView
    Par totot dans le forum Composants graphiques
    Réponses: 6
    Dernier message: 27/05/2014, 15h38
  2. Positionnement auto dans LISTVIEW
    Par fidecourt dans le forum Macros et VBA Excel
    Réponses: 13
    Dernier message: 25/03/2009, 18h55
  3. Problème affichage données dans listview
    Par Alixe80 dans le forum VB 6 et antérieur
    Réponses: 12
    Dernier message: 13/05/2008, 20h42
  4. affichage de donnée dans LISTVIEW
    Par k_boy dans le forum VC++ .NET
    Réponses: 16
    Dernier message: 13/09/2006, 13h13
  5. Réponses: 8
    Dernier message: 12/05/2006, 14h04

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