listbox.items auslesen und "splitten"

  • VB.NET

Es gibt 6 Antworten in diesem Thema. Der letzte Beitrag () ist von SpaceyX.

    listbox.items auslesen und "splitten"

    hallo,

    ich füge hiermit die items an die listbox hinzu:

    Quellcode

    1. Dim directory As New System.IO.DirectoryInfo(pfad)
    2. ListBox1.Items.AddRange(System.IO.Directory.GetFiles(pfad, "*" & mp3))


    hierbei werden die ganzen pfade angezeigt
    wie kann hier jetz die item auslesen und namen von den dateien "splitten"?

    also z.B. das listbox.item1 = "anwendung"
    listbox.item2 = "anwenung2"

    hofffe jmd kann helfen :D

    mfg
    aber kannst du erkennen, dass das dort gezeigte dir ermöglicht, einerseits nur die Dateinamen anzuzeigen.
    Andererseits behälst du vollen Zugriff auf den Fullpath, und ühaupt auf alles was mit Dateien zu tun ist.

    Hingegen hast du nur eine Listbox mit Dateinamen, so reicht das nicht, um eine dieser Dateien zB auch zu öffnen - weil fehlen ja der Fullpath.

    Wenn du das erkennen kannst, und ansonsten nix mit dem Code anfangen kannst, dann kannst du vlt. erkennen, dass dir Grundlagen fehlen - denn viel Code isses ja nicht (im Kern glaub 3 Befehle)
    dieses Buch lesen (hingegen das Galileio-Openbook ist Mist)

    naja - nochmal angeguckt - eiglich ists so wenig code, da könntest du auch zeile für zeile fragen, was genau du nicht verstehst.

    nur mit "nix anfangen" kann man halt nix anfangen.
    Dann probiere einfach mal dieses einfach Beispiel und sieh, was passiert:

    VB.NET-Quellcode

    1. Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
    2. Dim dI As New IO.DirectoryInfo("Pfad hier eintragen")
    3. Me.ListBox2.Items.AddRange(dI.GetFiles())
    4. End Sub


    Den Pfad musst Du natürlich anpassen.

    Wenn Du nun denkst, oh toll, ich hab jetzt die Dateinamen in meiner ListBox, dann irrst Du. Es steckt nicht nur ein popliger String in der ListBox, sondern Instanzen vom Typ FileInfo.

    VB.NET-Quellcode

    1. Private Sub Button3_Click(sender As Object, e As EventArgs) Handles Button3.Click
    2. If Not IsNothing(Me.ListBox2.SelectedItem) Then
    3. Dim fI As IO.FileInfo = DirectCast(Me.ListBox2.SelectedItem, IO.FileInfo)
    4. MessageBox.Show(fI.FullName)
    5. End If
    6. End Sub


    Was Dir der Erfinder im Grunde sagen wollte ist, dass Du keine Strings in die ListBox packen sollst, sondern konkrete Objekte, mit denen man bei Bedarf sofort weiterarbeiten kann. Die ListBox hat auch eine Property DisplayMember:

    VB.NET-Quellcode

    1. Private Sub Button4_Click(sender As Object, e As EventArgs) Handles Button4.Click
    2. Me.ListBox2.DisplayMember = "FullName"
    3. End Sub


    Weise dieser Property einfach einen Propertynamem aus der FileInfo-Klasse zu und die ListBox wird es Dir zeigen.
    Die Unendlichkeit ist weit. Vor allem gegen Ende. ?(
    Manche Menschen sind gar nicht dumm. Sie haben nur Pech beim Denken. 8o

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „SpaceyX“ ()