plaatsen in een listbox

Status
Niet open voor verdere reacties.

bonnowagt

Gebruiker
Lid geworden
7 dec 2006
Berichten
445
Hallo,

Ik heb onderstaande code geplaatst in een For/Next. Deze schrijft nu niet de gegevens goed weg in de resp. listboxen. Zonder de For/Next werkt het prima. Waarschijnlijk een verkeerde lus???

Code:
   Dim openfile As New OpenFileDialog
       
        openfile.Filter = "Media Files|*.mp3;*.wav;*.au;*.aac;*.avi;*.mp4;*.mpeg;*.wma;*.wmv;*.ogg;*.vob;*.vcd"
        openfile.Multiselect = True
        openfile.ShowDialog()

        For I As Integer = 0 To openfile.FileNames.Count - 1
            ListBox1.Items.Add(Path.GetFileNameWithoutExtension(openfile.FileName(I)))
            ListBox2.Items.Add(openfile.FileName(I))
next

Vriendelijke groet
 
Probeer het zo:

Code:
Dim openfile As New OpenFileDialog

openfile.Filter = "Media Files|*.mp3;*.wav;*.au;*.aac;*.avi;*.mp4;*.mpeg;*.wma;*.wmv;*.ogg;*.vob;*.vcd"
openfile.Multiselect = True

If openfile.ShowDialog = DialogResult.Ok Then
For Each File As String in openfile.FileNames
ListBox1.Items.Add(Path.GetFileNameWithoutExtension(file))
ListBox2.Items.Add(file)
Next
End If
 
vervolg

Erg bedankt voor de snelle reactie. Het werkt prima.

Heb nu een listbox1 die de files zonder extensie opslaat en een listbox2 die de gegevens met ext. opslaat. Vervolgens sla ik dus listbox2 op.

Bij het terugzetten vraag ik dus de gegevens van listbox2 op die dus met extensie worden geplaatst.

Nu wil graag dat deze items van listbox2 ook weer inlistbox1 worden geplaatst en dasn natuurlijk weer zonder ext. Ik heb het volgende geprobeerd.
Code:
ListBox1.Items.AddRange(ListBox2.Items)

Dit werkt natuurlijk wel maar de gegevens worden natuurlijk precies het zelfde. Dus ik dacht iets in de trant van:

Code:
    ListBox1.Items.AddRange(ListBox2.Items.Path.GetFileNameWithoutExtension())

Dit werkt dus niet helaas.

Vriendelijke groet
 
Nee dan zul je dus net als in mn vorige post een lus moeten gebuiken, bijvoorbeeld een For Each... Next lus.
 
vervolg

Ik heb listbox2 op de volgende manier opgeslagen:

Code:
  Dim sfd As New SaveFileDialog With { _
         .AddExtension = True, _
         .Filter = "MP3 Lists (*.muziekbw)|*.muziekbw", _
         .FilterIndex = 0, _
      .RestoreDirectory = True, _
         .InitialDirectory = My.Application.Info.DirectoryPath}
        If sfd.ShowDialog = Windows.Forms.DialogResult.OK Then
            IO.File.WriteAllLines(sfd.FileName, (From item In ListBox1.Items.Cast(Of String)()).ToArray)

            '    My.Settings.lastSavedListPath = sfd.FileName
            My.Settings.Save()
        End If

Vervolgens vraag ik op de volgende manier lisbox2 weer op:

Code:
      Dim ofd As New OpenFileDialog With { _
.AddExtension = True, _
.Filter = "MP3 Lists (*.muziekbw)|*.muziekbw", _
.FilterIndex = 0, _
.RestoreDirectory = True, _
 .InitialDirectory = My.Application.Info.DirectoryPath}
        If ofd.ShowDialog = Windows.Forms.DialogResult.OK Then
                     ListBox2.Items.AddRange(IO.File.ReadAllLines(ofd.FileName))
        End If

             For Each File As String In ofd.FileName
 !!!!!! ListBox1.Items.Add(ListBox2.Items.Path.GetFileNameWithoutExtension(File))!!!!!!!!
 next
          
        Next

Nu heb ik al van alles geprobeerd om de gegevens van listbox2 zonder ext. in listbox1 te kopieren, tussen for each ... next maar het werkt niet.

Vriendelijk groet
 
Code:
For Each item In ListBox2.Items
ListBox1.Items.Add(System.IO.Path.GetFileNameWithoutExtension(item))
Next

:D
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan