Eigener Datei-Explorer

  • VB.NET

Es gibt 13 Antworten in diesem Thema. Der letzte Beitrag () ist von xXLinkeXx.

    Eigener Datei-Explorer

    Hallo,
    Ich habe vor so eine art eigenen Explorer zu basteln. Dabei habe ich jedoch einige Probleme bei denen ich nicht weiterkomme.
    So sieht es aus:


    Wie man auf dem Bild erkennen kann gibt es 3 Listviews und 1 Treeview.
    Funktionen der jeweiligen Steuerelemente:
    • Listview1 = Anzeigen der Dateien und bei doppel klick starten/ öffnen der Datei
    • Listview2/ 3 = Verzeichnisse, beim klicken auf z.b. Eigene Dateien sollen im Treeview1 die Ordner und Unterordner angezeigt werden
    • Treeview1 = Hier werden die Ordner und Unterordner angezeigt, beim klicken auf diese sollen die enthaltenen Dateien angezeigt werden.
    Nun die Probleme: Wie kann ich,
    1. Beim klicken auf ein ListViewItem die Verzeichnisse anzeigen lassen?
    2. Beim klicken auf ein TreeViewItem die Dateien anzeigen lassen?
    3. Die Symbole der Dateien im Listview anzeigen?
    4. Beim doppel klick auf die Dateien im ListView1, diese öffnen oder starten?
    Die Dateien und Ordner kann man mit IO.Directory.GetFiles("C:\") und IO.Directory.GetDirectories("C:\") oder mit My.Computer.FileSystem.GetDirectories/ Files("C:\", FileIO.SearchOption.SearchAllSubDirectories) abrufen, aber wie kann ich das in verbindung mit meinen Fragen/ Problemen benutzen?
    Das ist ja das im großen und ganzen Hauptproblem^^ ich hab keine Ahnung wie ich da anfangen soll.
    Mit For each könnte man für jede/s Datei/Verzeichniss ein Item erstellen. Aber dafür müsste ich erstmal wissen wie ich es hinbekomme, das wen ich auf ein Item klicke die dazugehörigen Datein/ Ordner angezeigt werden.
    Hai !
    Du baust eine Oberfläche und weist nicht wo du anfangen solltest.
    Mach das was du machen kannst und über den rest werden wir weiter unterhalten, du erwartest doch nicht das wir für dich komplette Code schreiben, darauf kannst du lange warten ! ;) :)

    Mfg Alex
    Also,
    Für das erste Item von Listview3:

    VB.NET-Quellcode

    1. Private Sub ListView3_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ListView3.SelectedIndexChanged
    2. If ListView3.Items.Item(0).Selected Then
    3. For Each Verzeichniss As String In My.Computer.FileSystem.GetDirectories(My.Computer.FileSystem.SpecialDirectories.Desktop.ToString, FileIO.SearchOption.SearchAllSubDirectories)
    4. TreeView1.Nodes.Add(Verzeichniss)
    5. Next
    6. End If
    7. End Sub

    So werden alle Ordner als Pfad im TreeView angezeigt, jedoch werden die Unterordner nicht als Subitem im Treeview angezeigt und auch nicht nur der Name des Ordners.

    So und weiter weiß ich leider nicht sonst hätte ich dieses Thema ja nicht eröffnet ^^
    Hallo
    dein Problem liegt vielleicht daran das du nicht weißt wie man die Laufwerke, Verzeichnisse und Dateien anzeigen lassen kann
    du mußt als erstes ein Imports machen z.b.

    Quellcode

    1. Imports System.IO

    da gibt es dann viele weiter funktionen z.b. DriveInfo, DirectoryInfo, und Filesinfo usw.
    damit kannst du deine Laufwerke, Verzeichnisse und Dateien anzeigen lassen.
    Ich hab dir mal ein Beispiel aus diesem Forum rausgesucht

    Laufwerke in einer Text, ListBox ... anzeigen lassen

    Gruß
    DeMa
    hallo xxlinkexx,

    dein vorhaben ist ein richtig umfangreiches - du solltest das sehr strukturiert angehen.
    aber das war nicht die frage.

    einen fehler hab ich entdeckt.
    falsch

    VB.NET-Quellcode

    1. My.Computer.FileSystem.SpecialDirectories.Desktop.ToString

    richtig

    VB.NET-Quellcode

    1. Environment.GetFolderPath(Environment.SpecialDirectories.Desktop)


    für alles andere hat dir ja dema schon etwas gepostet.

    gruss

    mikeb69

    mikeb69 schrieb:

    falsch

    VB.NET-Quellcode

    1. My.Computer.FileSystem.SpecialDirectories.Desktop.ToString

    richtig

    VB.NET-Quellcode

    1. Environment.GetFolderPath(Environment.SpecialDirectories.Desktop)

    Hi, wieso "falsch"? Es ist beides richtig, zwar ist es ohne My sauberer, aber dennoch richtig!

    ~ Chris
    To make foobar2000 a real random music player, I figured out the only way to achieve this is to use Windows Media Player.

    At some point in time, you recognize that knowing more does not necessarily make you more happy.
    Danke für eure antworten
    @dema
    Hat mir zwar nicht soviel
    gebracht weil ich schon wusste wie es geht und weil ich so schlau war :rolleyes:
    und gegoogelt b.z.w. das Forum durchsucht habe bevor ich das Thema
    eröffnet habe, trotzdem danke :D

    Trotzallem wurden meine fragen noch nicht beantwortet ;(
    Vielleicht hab ich die Fragen nicht richtig formuliert. Hier nochmal detaillierter:
    • Beim klicken auf ein ListViewItem die Verzeichnisse anzeigen lassen? GELÖST :thumbsup:
    • Beim klicken auf ein TreeViewItem die Dateien anzeigen lassen?
    Da die Verzeichnisse auf jedem Computer unterschiedlich sind kann man ja nicht vorprogrammieren das wenn man auf ein Item z.b. mit dem Namen GAMES klickt die enthaltenen Dateien angezeigt werden. Daher soll es irgendwie automatisch passieren das sie angezeigt werden. Vielleicht so:
    For Each file As String In My.Computer.FileSystem.GetFiles(Die gewählten items auslesen) aber keine ahnung wie man das verwirklichen kann oder ob es einer einfachere bessere lösung gibt.
    • Die Symbole der Dateien im Listview anzeigen?
    Damit meine ich wenn die Dateien im Listview angezeigt werden, nachdem man das Verzeichniss gewählt hat sollen die Ordner symbole oder bei z.b. txt Dokumenten die Symbole für Ordner und Textdateiensymbole angezeigt werden.
    • Beim doppel klick auf die Dateien im ListView1, diese öffnen oder starten?
    Wenn man auf eine Datei im Listview klickt soll diese regulär geöffnet werden (das heißt z.b. txt-dateien im editor) oder wenn ein Spiel im Listview angezeigt wird sprich eine EXE dann soll diese ausgefürt werden.

    Wie man erkennen kann soll es ein sehr komplexes/ umfangreiches Programm werden :rolleyes:.
    Würde mich sehr darüber freuen wenn sich jemand damit auskennt und mir dabei helfen kann :thumbsup:
    (wäre auch über einen sourcecode nicht traurig :P )
    Guten Morgen !
    Hab ne paar Fragen auf was wartest du eigentlich, bis irgend-jemand für dich die Code schmiert und du brauchst nur kopieren und einfügen, oder kommt das Code auf zwie Beine zu dir nach Hause. ;) :D
    Im Internet gibs soviel Beispiel Code, du muß nur die Code nach deine Anforderungen & Wünschen anpassen.
    Hier habe ich Links, wie die Dateien aus Verzeichnis werden aufgelistet:
    000
    001

    1. Was "ICON" & "Dateien mit dazugehörige Programm öffnen", muß du tief in WIN REGESTRY zugreifen, gibs auch jede menge Beschreibungen und Anleitungen über WIN REG, schau dich um....

    2. Wie mann eine EXE Datei auführt, wurde hier Forum schon mehr mals behandelt

    Hier hast du schon 2 Lösungen auf einen Schlag, und den Rest muß du selber tricksen, gib dir Mühe !

    Mfg Alex

    Dieser Beitrag wurde bereits 3 mal editiert, zuletzt von „Alex2000“ ()