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 :

Restitution de my setting dans une listbox


Sujet :

VB.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Octobre 2011
    Messages
    135
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Octobre 2011
    Messages : 135
    Par défaut Restitution de my setting dans une listbox
    Bonsoir à tous.

    J'ai un soucis avec avec la restitution des données dans une listbox à partir de my.settings.

    A la fin de ma listbox, j'ai une ligne vide en trop et je ne sais comment faire pour la vider.

    Voisi mon code pour l'enregistrement des données
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    Public Sub SauveListeInterprete()
            'Déclare la chaîne temporaire qui servira à enregistrer le contenu du tableau
            Dim tmpContenu As String = ""
            'On va maintenant construire la même chose qu'un fichier .csv :
            'Chaque ligne est séparée par le caractère VbLf
            'Prend chacune des lignes de la Listbox
            For Each I As Object In Soiree.LbInterpreteEnreg.Items
                'Ajoute le caractère VbLf à la string représentant le tableau
                tmpContenu = tmpContenu & I & vbLf
            Next
            'Enregistre maintenant cette String dans tes settings
            My.Settings.ListeDesInterpretes = tmpContenu
        End Sub
    Voici mon code pour la restitution des données dans la listbox
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Public Sub LitListeInterprete()
            Dim tmpContenu As String
            Dim Lignes As String()
            'Récupère le tableau dans les settings
            tmpContenu = My.Settings.ListeDesInterpretes
            'Divise la String en autant de lignes qu'il y en a (séparées par les VbLf)
            Lignes = Split(tmpContenu, vbLf)
            'Ajoute l'ensemble des lignes à la listBox
            Soiree.LbInterpreteEnreg.Items.AddRange(Lignes)
        End Sub
    Je pense qu'il doit y avoir une commande à donner pour lui dire de ne pas tenir compte de la derni-re ligne.

    Merci par avance pour vos réponses.

    @+ Martipit

  2. #2
    Membre chevronné Avatar de Vince
    Profil pro
    Inscrit en
    Mars 2002
    Messages
    369
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2002
    Messages : 369
    Par défaut
    Si j'ai bien compris tu as un élément de trop à la fin de ton tableau de chaines, tu peux faire un Redim Preserve Tab(x) :

    Redim Preserve Lignes(Lignes.lenght -1)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    Public Sub LitListeInterprete()
            Dim tmpContenu As String
            Dim Lignes As String()
            'Récupère le tableau dans les settings
            tmpContenu = My.Settings.ListeDesInterpretes
            'Divise la String en autant de lignes qu'il y en a (séparées par les VbLf)
            Lignes = Split(tmpContenu, vbLf)
     
            Redim Preserve Lignes(Lignes.lenght -1)
     
            'Ajoute l'ensemble des lignes à la listBox
            Soiree.LbInterpreteEnreg.Items.AddRange(Lignes)
        End Sub
    A tester je te dis ça de tête...

  3. #3
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Octobre 2011
    Messages
    135
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Octobre 2011
    Messages : 135
    Par défaut
    Salut Vince.

    Merci à toi de te pencher sur mon problème.

    Après bien des recherches j'ai trouvé ceci :

    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
    Public Sub LitListeInterprete()
            Dim tmpContenu As String
            Dim Lignes As String()
            Dim Incr As Integer
            Dim items As Object
            Dim cells As String
            'Récupère le tableau dans les settings
            tmpContenu = My.Settings.ListeDesInterpretes
            'Divise la String en autant de lignes qu'il y en a (séparées par les VbLf)
            Lignes = Split(tmpContenu, vbLf)
            'Supprime la dernière ligne qui est forcément vide
            ReDim Items(Lignes.GetUpperBound(0) - 1) '-1 car il y a une ligne vide  en trop dans le fichier
            'Ajoute chaque ligne dans le tableau de données
            For Incr = 0 To Lignes.GetUpperBound(0) - 1
                cells = Lignes(Incr)
                'Ajoute la ligne à la liste des lignes à ajouter
                items(Incr) = cells
            Next
            'Ajoute l'ensemble des lignes à la listBox
            Soiree.LbInterpreteEnreg.Items.AddRange(Items)
        End Sub
    A priori cela fonctionne.

    J'ai testé ta solution car moins de lignes de codes mais j'ai une erreure qui stipule que
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Redim Preserve Lignes(Lignes.lenght -1)
    n'est pas un membre de arrway.

    @+ Martipit

  4. #4
    Membre confirmé
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Septembre 2012
    Messages
    37
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Septembre 2012
    Messages : 37
    Par défaut
    Citation Envoyé par Martipit Voir le message
    J'ai testé ta solution car moins de lignes de codes mais j'ai une erreure qui stipule que
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Redim Preserve Lignes(Lignes.lenght -1)
    n'est pas un membre de arrway.

    @+ Martipit
    Lignes.Count alors..

Discussions similaires

  1. recherche dans une listbox
    Par micknic dans le forum Balisage (X)HTML et validation W3C
    Réponses: 4
    Dernier message: 23/02/2005, 21h39
  2. Clique droit dans une ListBox
    Par LoicH dans le forum C++Builder
    Réponses: 5
    Dernier message: 07/02/2005, 22h50
  3. [debutant] supprimer elements dans une listbox
    Par F.F. dans le forum C++Builder
    Réponses: 8
    Dernier message: 02/07/2004, 11h38
  4. [WIN32]tabulation dans une listbox
    Par stoluup dans le forum MFC
    Réponses: 2
    Dernier message: 09/06/2004, 10h11
  5. Icône a coté du texte dans une ListBox
    Par joce3000 dans le forum C++Builder
    Réponses: 6
    Dernier message: 05/12/2003, 02h25

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