TreeView en ListView

Status
Niet open voor verdere reacties.

johnrm93

Gebruiker
Lid geworden
24 apr 2013
Berichten
7
Goedendag,

Allereerst wil ik kwijt dat ik niet geweldig bent in het programmeren...

Ik ben bezig met een "simpel..." programma voor me moeder,

Hierbij is het noodzakelijk dat de drivers en mappen in een treeview geplaatst worden. Dit is gelukt, maar echter heb ik een probleem met de ListView, ik krijg de items van de TreeView niet in de ListView.

Wat ik dus bedoel is dat de folders aan de linker kant (De TreeView) komt te staan, en de bestanden (.txt, .exe en alle andere extensies) aan de rechter kant (de ListView) komt te staan.

Me code bestaat uit het volgende;

Code:
Public Class FileEdit

    Private Sub frameFileEdit_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

        Dim strDive As String

        AddDriversAndFolders.Nodes.Clear()

        For Each strDive In IO.Directory.GetLogicalDrives()
            With AddDriversAndFolders.Nodes.Add(strDive).Nodes.Add("NIKS")
            End With
        Next

    End Sub

    Private Enum ItemType
        Directory = 1
        File = 2
    End Enum

    Private Sub AddFolders(ByVal nod As TreeNode)
        Dim strPath As String = nod.FullPath
        Dim map As String

        For Each map In IO.Directory.GetDirectories(strPath)
            With nod.Nodes.Add(IO.Path.GetFileName(map))
                .Tag = ItemType.Directory
                'om achteraf te gebruiken bij lblInformatie
                .Nodes.Add("NIKS") 'om plusteken te zien
            End With
        Next
    End Sub


    Private Sub AddDriversAndFolders_AfterSelect(ByVal sender As System.Object, ByVal e As System.Windows.Forms.TreeViewEventArgs) Handles AddDriversAndFolders.AfterSelect

        Try
            Select Case e.Node.Tag
                'kijk na of het gaat over een bestand of een map...
                Case ItemType.File 'case 1 zou ook goed geweest zijn...
                    Dim bestand As New IO.FileInfo(e.Node.FullPath)
                    lblInformatie.Text = bestand.Name & " : lengte: " & _
                        bestand.Length.ToString & " bytes."
                    lblInformatie.Text &= " aangemaakty op: " & _
                        bestand.LastWriteTime
                    lblInformatie.Text &= vbNewLine & "extensie: " & _
                        bestand.Extension & Space(5) & _
                        bestand.Attributes.ToString

                Case ItemType.Directory

                    Dim nod As TreeNode
                    Dim map As New IO.DirectoryInfo(e.Node.FullPath)
                    lblInformatie.Text = "Root: " & map.Root.Name & _
                    Space(5) & "Parent: " & map.Parent.Name & Space(5) & _
                    map.Attributes.ToString

                    Dim strPath As String = nod.FullPath
                    Dim i As String
                    For Each i In IO.Directory.GetFiles(strPath)
                        With nod.Nodes.Add(IO.Path.GetFileName(i))
                            .Tag = ItemType.File
                        End With
                    Next

            End Select
        Catch exp As Exception
            MessageBox.Show(exp.Message, Me.Text)

        End Try

    End Sub


    Private Sub AddDriversAndFolders_BeforeExpand(ByVal sender As Object, _
    ByVal e As System.Windows.Forms.TreeViewCancelEventArgs) _
    Handles AddDriversAndFolders.BeforeExpand

        Try
            e.Node.Nodes.Clear()
            'verwijder eerst de onderkeuze 'NIKS'

            AddFolders(e.Node)  'voeg mappen toe

        Catch err As IO.IOException

        Catch OtherErr As Exception
            'toon melding bij een andere fout
            MessageBox.Show(OtherErr.Message, Me.Text)
        End Try
    End Sub

    Private Sub ListView1_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ListView1.SelectedIndexChanged

    End Sub
End Class

Ik kom er niet meer uit, heb ook al gezocht, maar geen van de codes werken, of ze doen hele andere dingen.

m.v.g, JohnRM93
 
Laatst bewerkt:
Hallo,

Ik heb zelf laatst ook zoiets gemaakt, maar ik heb het nooit echt uitgebreid gemaakt.

De basis werkt dus misschien kan je kijken hoe ik het heb gedaan en dan vanuit daar verder bouwen. Ik heb de debug en release folder geleegd omdat het anders te groot was om up te loaden, maar als je het programma build, worden die weer gevuld. Zie hier het project: Bekijk bijlage FileBrowser.zip.

Succes! :thumb:
MartinJM
 
Bedankt, ik zou eens kijken!

Sorry voor de late reactie, was aantal dagjes weg!
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan