Problem mit eigenem Explorer

  • VB.NET

Es gibt 4 Antworten in diesem Thema. Der letzte Beitrag () ist von Sleepersword.

    Problem mit eigenem Explorer

    Hallo liebe VB-Community,
    ich bin gerade dabei einen eigenen FTP Client zu erstellen. Um den eigenen Computer zu durchsuchen hab ich eine ListView erstellt, die ich mit folgender Funktion fülle:

    VB.NET-Quellcode

    1. 'WinExplorer = ListView
    2. Private Sub WinDirLoad(ByVal Path As String)
    3. Dim di As New System.IO.DirectoryInfo(Path)
    4. If di.Exists = True Then
    5. ilist.Images.Add("diricon", My.Resources.FolderIcon)
    6. ilist.Images.Clear()
    7. For Each fi As System.IO.DirectoryInfo In di.GetDirectories
    8. WinExplorer.Items.Add(New ListViewItem() With {.Text = fi.Name, .Tag = fi.FullName, .ImageKey = "diricon"})
    9. Next
    10. For Each fi As System.IO.FileInfo In di.GetFiles()
    11. ilist.Images.Add(CStr(ilist.Images.Count), Icon.ExtractAssociatedIcon(fi.FullName))
    12. WinExplorer.Items.Add(New ListViewItem() With {.Text = fi.Name, .Tag = fi.FullName, .ImageKey = CStr(ilist.Images.Count)})
    13. Next
    14. End If
    15. End Sub


    Das Problem ist das die Icons nicht angezeigt werden, wenn ich sie in der For-Schleife hinzufüge ?( .

    Und noch eine Problem undzwar wenn ich über die erste For-Schleife WinExplorer.Clear() schreibe, wird überhauptnichts angezeigt.
    Vielen Dank schonmal, Sleepersword :D
    Also was mir sofort ins Auge springt ist das hier:

    VB.NET-Quellcode

    1. CStr(ilist.Images.Count)


    Ich nehme an damit möchtest du die zuletzt hinzugefügte Datei bzw. Bild ansprechen? Dann müsstest du hinter dem Count ein "-1" hängen.
    Und ich weiß nicht ob ExtractIcon bei jeder Datei geht, aber das ist eine andere Sache.
    Ah, danke erstmal dafür :)



    Das merkwürdige ist nur, das ich das ganze in einem Verziechnis, in dem nur Anwendungen liegen, probiert hab und trotzdem kein Icon bekommen hab.
    Außerdem müssten die Ordner ja trotzdem ein Icon haben, was aber nicht der Fall ist.
    Die Imagelist hast du dem Listview hinzugefügt im Designer? Achte darauf das sie in allen 3 Einstellungen ist, sprich Small Large und State oder so ähnlich.

    //edit: Habe dein Code getestet, er funktioniert einwandfrei. Ich schätze du hast die Imagelist nicht der Listview hinzugefügt ;)