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 :

SelectedItem : Comment sélectionner un "item" dans une listbox [Débutant]


Sujet :

VB.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2017
    Messages
    150
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2017
    Messages : 150
    Par défaut SelectedItem : Comment sélectionner un "item" dans une listbox
    Bonjour !

    Alors je m'explique, je cherche à sélectionner un fichier .csv dans une listbox, je sélectionne mon dossier grâce à FolderBrowserDialog().
    Précédemment avec l'aide de r.morel (Merci !) j'ai pu afficher mon csv (dans un graphe) de cette manière :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    	Dim MyValue As New List(Of KeyValuePair(Of Integer, Double))()
    		Dim Separator As Char = CChar(";")
    		For Each Line As String In System.IO.File.ReadAllLines("C:\Users\ism\Desktop\Dig\bin\Debug\Measurements\B.csv")
    		    MyValue.Add(New KeyValuePair(Of Integer, Double)(CInt(Line.Split(Separator)(0)), CDbl(Line.Split(Separator)(1))))
    		Next
    		Chart.DataContext = MyValue
    Comme vous le voyez, j'utilise l'adresse direct du fichier csv :
    C:\Users\ism\Desktop\Dig\bin\Debug\Measurements\B.csv
    Je cherche donc à ne plus utiliser l'adresse du fichier mais plutôt un moyen de sélectionner le .csv que je souhaite dans mon dossier.
    Je vous montre :

    Nom : SelectionedCSV.PNG
Affichages : 522
Taille : 62,0 Ko
    Ici je selectionne mon CSV

    Nom : CourbeCSV.PNG
Affichages : 499
Taille : 272,4 Ko
    Voici ce que j'affiche.

    Maintenant il faut que je fasse un lien entre les 2 et donc pouvoir sélectionner le csv que je veux dans le dossier que je veux à l'aide de FolderBrowserDialog() (j'utilise cette fonction et elle fonctionne bien au passage)

    J'ai entendu parler de SelectedItem, sauf que je n'arrive pas à l'utiliser correctement...

    Merci encore une fois à ce qui prendront le temps de me répondre !

    Je pense comme ça :

    J'ai CM.vb et dans ce .vb j'ai mon FolderBrowserDialog() donc c'est ici que je sélectionne mon csv. Maintenant il faut que je trouve un moyen d'envoyer l'adresse de mon csv dans mon CD.vb. Car dans mon CD.vb se trouve la lecture de mon csv vu avec r.morel :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    	Dim MyValue As New List(Of KeyValuePair(Of Integer, Double))()
    		Dim Separator As Char = CChar(";")
    		Dim path As String = "C:\Users\ism\Desktop\Dig\bin\Debug\Measurements\b.csv"
    		For Each Line As String In System.IO.File.ReadAllLines(Path)
    		    MyValue.Add(New KeyValuePair(Of Integer, Double)(CInt(Line.Split(Separator)(0)), CDbl(Line.Split(Separator)(1))))
    		Next
    		Chart.DataContext = MyValue
    (CM.vb et CD.vb sont bien dans la même solution)

    Donc "path" contiendra l'adresse du fichier csv sélectionné (path sera donc une variable) et non pas l'adresse en dur comme ici "C:\Users\ism\Desktop\Dig\bin\Debug\Measurements\b.csv" .

    Si quelqu'un à compris et peut m'aider ça serait très gentil !!

  2. #2
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2017
    Messages
    150
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2017
    Messages : 150
    Par défaut
    Bonjour,

    Personne n'a une idée svp ?

    Je pense à créer une variable qui contient les adresses de mes fichier csv dans ma listbox. Ensuite réutiliser cette variable dans ma boucle For vu un peu plus haut.
    Sauf que je reçois constament des erreurs...

    Si quelqu'un peut m'aiguiller svp parce que je tourne en rond...

    Merci à tous !!

  3. #3
    Membre chevronné Avatar de r.morel
    Homme Profil pro
    Dessinateur CAO
    Inscrit en
    Août 2014
    Messages
    339
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Dessinateur CAO
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Août 2014
    Messages : 339
    Par défaut
    Salut,
    Envoi nous ton code pour lister les fichiers et les affichés dans ta liste...

  4. #4
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2017
    Messages
    150
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2017
    Messages : 150
    Par défaut
    Salut r.morel !

    Dans mon CM.xaml.vb j'ai :

    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
    	Public Sub FolderBrowserDialogFunc() 
    			Dim FDB As New FolderBrowserDialog()	
    			Dim List As New SignalA() 
    			If FDB.ShowDialog() = System.Windows.Forms.DialogResult.OK Then
    '				AListbox.Items.Clear()
    				Dim Files As FileInfo() = (New DirectoryInfo(FDB.SelectedPath)).GetFiles
    '				Dim dirs As String() = Directory.GetDirectories(FDB.SelectedPath)
    			 	For Each File As FileInfo In Files
    				 	List.Add(New SignalD("b.png", file.ToString, file.CreationTime))
    '				 	AListbox.Items.Add(Path.GetFileName(file.ToString))
    			 	Next
    '				For Each dir As String In dirs
    '					AListbox.Items.Add(Path.GetFullPath(dir))	
    '				Next
    				AListbox.ItemsSource = List
    			End If		
    	End Sub
    et dans mon CD.xaml.vb j'ai :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    	Public Sub showChart()    	
    		Dim MyValue As New List(Of KeyValuePair(Of Integer, Double))()
    		Dim Separator As Char = CChar(";")
    		Dim FilePath As String = "C:\Users\ism\Desktop\Dig\bin\Debug\Measurements\b1.csv"
    		For Each Line As String In System.IO.File.ReadAllLines(FilePath)
    		    MyValue.Add(New KeyValuePair(Of Integer, Double)(CInt(Line.Split(Separator)(0)), CDbl(Line.Split(Separator)(1))))
    		Next
    		Chart.DataContext = MyValue
        End Sub
    Je sais pas si c'est suffisant pour m'aider mais le prob c'est que le reste est confidentiel...(appartient à l'entreprise)

  5. #5
    Membre chevronné Avatar de r.morel
    Homme Profil pro
    Dessinateur CAO
    Inscrit en
    Août 2014
    Messages
    339
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Dessinateur CAO
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Août 2014
    Messages : 339
    Par défaut
    Dans ta CLass CM :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Public Class CM
    Public Property FichierChoisi as String
     
    '[..]
     
      Private Sub AListBox_SelectionChanged(ByVal sender As Object, ByVal e As SelectionChangedEventArgs) Handles AListBox.SelectionChanged
        FichierChoisi = AListBox.SelectedItem
      End Sub
    End Class
    Ensuite dans ta Class CD :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Dim MyWindow as New CD
    CD.ShowDialog
    Dim NomFiechier as String = MyWindow.FichierChoisi

  6. #6
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2017
    Messages
    150
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2017
    Messages : 150
    Par défaut
    La classe CM et CD sont dans 2 "items" différents, je veux dire par là 2 fenêtres différentes, ce n'est pas une classe sous une autre, est ce que cela pose problème ??


    J'ai un prob, on me dit que ShowDialog et Fichierchoisi ne sont pas des membres de la classe CD, pourtant ils sont bien définis dans cette classe...


    Pour :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Dim MyWindow as New CD
    CD.ShowDialog
    Dim NomFiechier as String = MyWindow.FichierChoisi
    ça ne serait pas plutôt : car FichierChoisi est défini dans CM ???


    Honnêtement je n'ai pas bien compris.

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

Discussions similaires

  1. Réponses: 6
    Dernier message: 16/11/2005, 09h34

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