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 Forms Discussion :

[VB.net] listbox elements selectionnes ?


Sujet :

Windows Forms

  1. #1
    Membre éclairé
    Inscrit en
    Mars 2006
    Messages
    342
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 342
    Par défaut [VB.net] listbox elements selectionnes ?
    Bonjour,

    ma question est plus que basique desole. Mais curieusement je viens d y passer un petit moment dessus et du coup suis un peu ... confu now.

    J ai une Listbox, dans laquelle j ai authorise le choix multiple.

    je lance l appli, l utilisateur peut effectivement selectionner plusieurs elements, mais je m interroge sur le fait que la list selectionnee est automatiquement mise a jour ou faut il ecrire un bout de code.

    Et si elle est automatiquement mise a jour comment avoir acces aux Strings selectionnes dans ma liste ?

    Merci, et encore sorry pour cette question a deux balles ...

  2. #2
    Membre éprouvé

    Homme Profil pro
    kiné passionné de dev
    Inscrit en
    Mars 2006
    Messages
    1 570
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France

    Informations professionnelles :
    Activité : kiné passionné de dev

    Informations forums :
    Inscription : Mars 2006
    Messages : 1 570
    Billets dans le blog
    1
    Par défaut
    Non, c'est normal qu'il y ait des questions basique, il faut bien commencer un jour !

    Sinon, pour répondre à ta question, je ne comprend pas la partie où tu parles d'automatisation:
    mais je m interroge sur le fait que la list selectionnee est automatiquement mise a jour ou faut il ecrire un bout de code.
    que veux-tu dire par là?

  3. #3
    Membre éclairé
    Inscrit en
    Mars 2006
    Messages
    342
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 342
    Par défaut
    Coucou,

    desole de pas avoir repondu plus tot, gt en weekend

    Je vais essayer d eclaircir ce que je voudrais faire :

    A l heure actuelle l utilisateur peut selectionner seulement un element de ma listbox. Lorsque je veux enregistrer sa valeur je fais :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    VScenario =lstScenario.SelectedItem.ToString
    VScenario prend donc la valeur de l element selectionne par l utilisateur.

    Mais je voudrais permettre a l utilisateur de selectionner plusieurs elements et affecter c elements a une variable. L algo que j essaye de faire est donc en gros :

    Pour chaque element selectionne faire :
    ...
    VScenario prend la valeur d un des elements selectionnes
    Console.WriteLine(VScenario)
    ...
    fin de ma boucle


    C est tout con, mais honnettement j y arrive pas ...

    Merci

  4. #4
    Membre éprouvé
    Inscrit en
    Janvier 2003
    Messages
    110
    Détails du profil
    Informations personnelles :
    Âge : 45

    Informations forums :
    Inscription : Janvier 2003
    Messages : 110
    Par défaut
    Bonjour,

    Tu peux faire un truc du style

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    i = 0
    Do while i < MaListBox.Items.count
       if MaListBox.items(i).selected then
          'Ton traitement
       end if
       i = i + 1
    loop
    Désolé mais le code n'est pas testé

  5. #5
    Membre éclairé
    Inscrit en
    Mars 2006
    Messages
    342
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 342
    Par défaut
    Salut,

    merci pour ton aide. Apparemment il n aime pas
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if MaListBox.items(i).selected then
    il me sort ca comme message : Public member 'selected' on type 'String' not found

    je capte tjs po comment fonctionne c Listbox avec un multichoix

  6. #6
    Membre éprouvé
    Inscrit en
    Mars 2007
    Messages
    88
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 88
    Par défaut
    Bonjour,

    Tu peut essayer (si tu ne modifie pas ta sélection pendant la boucle)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
        Dim item As ListViewItem
        For Each item In MaListBox.SelectedItems
                'Ton traitement
        Next
    @ +

  7. #7
    Membre éclairé
    Inscrit en
    Mars 2006
    Messages
    342
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 342
    Par défaut
    Salut Lunelame,

    une foi de plus tu viens a mon secours lol merci

    par contre, je viens d essayer ton bout de code et j ai aussi une erreur :

    Unable to cast object of type 'System.String' to type 'System.Windows.Forms.ListViewItem'.

    bref, je capte po

  8. #8
    Membre éprouvé
    Inscrit en
    Mars 2007
    Messages
    88
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 88
    Par défaut
    Tu peux me faire voir ton code ? STP

  9. #9
    Membre éclairé
    Inscrit en
    Mars 2006
    Messages
    342
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 342
    Par défaut
    heu ... qu est ce que tu voudrais voir exactement ?

    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
    Private Sub btnRun_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnRun.Click
            Dim myfile As New RainsimFile(VRegion, VScenario, VLength, VDisaggregation, VPath)
            Console.Write(VRegion & "  " & VScenario & "  " & VLength & "  " & VDisaggregation & "  " & lblFolderpath.Text)
            Console.WriteLine()
     
     
            'Dim icount As Integer = 0
            'Do While icount < lstScenario.Items.Count
            '    If lstScenario.Selected.is.Item(icount) Then
            '        Console.WriteLine(VRegion & "  " & VScenario & "  " & VLength & "  " & VDisaggregation & "  " & lblFolderpath.Text)
            '    End If
            '    icount = icount + 1
            'Loop
     
            Dim item As ListViewItem
            For Each item In lstScenario.SelectedItems
             Console.WriteLine(VRegion & "  " & VScenario & "  " & VLength & "  " & VDisaggregation & "  " & lblFolderpath.Text)
            Next
     
            myfile.constructavg(VAverage)
     
        End Sub

  10. #10
    Membre éprouvé
    Inscrit en
    Mars 2007
    Messages
    88
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 88
    Par défaut
    Tu es en option strict ?

    Visiblement, il n'arrive pas à effectuer une convertion.
    Debug, pas à pas.
    Ou essai, à tout hasard
    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
     
    Private Sub btnRun_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnRun.Click
     
    Try
           Dim myfile As New RainsimFile(VRegion, VScenario, VLength, VDisaggregation, VPath)
            Console.Write(VRegion & "  " & VScenario & "  " & VLength & "  " & VDisaggregation & "  " & lblFolderpath.Text)
            Console.WriteLine()
     
            Dim item As SelectedItem
            For Each item In lstScenario.SelectedItems
             Console.WriteLine(VRegion & "  " & VScenario & "  " & VLength & "  " & VDisaggregation & "  " & lblFolderpath.Text)
            Next
     
            myfile.constructavg(VAverage)
    Catch ex as Exception
         Debug.writeLine ex.toString
    End Try 
     
    End Sub
    @ +

  11. #11
    Membre éclairé
    Inscrit en
    Mars 2006
    Messages
    342
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 342
    Par défaut
    Yo yo yo,

    c encore moi avec mon probleme.

    Oui Lunelame je suis en option strict. (J avoue que je ne c pas trop pourquoi, je me dis juste qu il est plus "serieux, precis" de travailler comme ca.)

    L element lstScenario.SelectedItems a bien la propriete egale au nombre de string selectionne dans ma listbox, par contre, item est egal a nothing.
    J ai l exception : "Unable to cast object of type 'System.String' to type 'System.Windows.Forms.ListViewItem'."




    Bon, voila un code qui fonctionne. Il me renvoit bien les elements de ma listbox youppii.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
                For icount = 0 To lstScenario.SelectedItems.Count - 1
                     Console.WriteLine(lstScenario.SelectedItems(icount))
                Next
            Next

    Merci a tout ceux qui sont venu voir ce post ^^ et specialement Lunelame qui vient tjs a mon secours

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

Discussions similaires

  1. Element selectionné dans listbox
    Par Pierre67 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 07/03/2009, 18h45
  2. Réponses: 2
    Dernier message: 17/08/2007, 13h21
  3. [VB.NET][listbox] Comment supprimer un element ?
    Par am.adnane dans le forum Windows Forms
    Réponses: 5
    Dernier message: 11/07/2006, 00h28
  4. [VB.NET] ListBox lié un element a une clé
    Par hirochirak dans le forum Windows Forms
    Réponses: 8
    Dernier message: 03/05/2004, 11h17
  5. [VB.NET] Connaitre le nombre d'éléments sélectionnés
    Par stephtbest dans le forum ASP.NET
    Réponses: 7
    Dernier message: 16/02/2004, 14h52

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