Treeview
Fermé
mylord666
Messages postés
151
Date d'inscription
jeudi 26 juin 2014
Statut
Membre
Dernière intervention
9 septembre 2015
-
17 janv. 2015 à 23:46
mylord666 Messages postés 151 Date d'inscription jeudi 26 juin 2014 Statut Membre Dernière intervention 9 septembre 2015 - 18 janv. 2015 à 17:54
mylord666 Messages postés 151 Date d'inscription jeudi 26 juin 2014 Statut Membre Dernière intervention 9 septembre 2015 - 18 janv. 2015 à 17:54
1 réponse
cs_Le Pivert
Messages postés
7904
Date d'inscription
jeudi 13 septembre 2007
Statut
Contributeur
Dernière intervention
14 août 2024
729
18 janv. 2015 à 11:16
18 janv. 2015 à 11:16
Bonjour,
Voici un exemple:
Ouvrir un nouveau projet. Mettre une listview à gauche du form et une treeview à droite. Coller ce code qui liste tous les dossiers images:
Voici un exemple:
Ouvrir un nouveau projet. Mettre une listview à gauche du form et une treeview à droite. Coller ce code qui liste tous les dossiers images:
Imports System.IO Public Class Form1 Private Sub PopulateTreeView() Dim rootNode As TreeNode Dim info As New DirectoryInfo("C:\Users\Utilisateur\Pictures") 'a adapter If info.Exists Then rootNode = New TreeNode(info.Name) rootNode.Tag = info GetDirectories(info.GetDirectories(), rootNode) TreeView1.Nodes.Add(rootNode) TreeView1.ExpandAll() End If End Sub Private Sub GetDirectories(ByVal subDirs() As DirectoryInfo, ByVal nodeToAddTo As TreeNode) Dim aNode As TreeNode Dim subSubDirs() As DirectoryInfo Dim subDir As DirectoryInfo For Each subDir In subDirs aNode = New TreeNode(subDir.Name, 0, 0) aNode.Tag = subDir aNode.ImageKey = "folder" Try subSubDirs = subDir.GetDirectories() Catch e As UnauthorizedAccessException subSubDirs = Nothing End Try If Not subSubDirs Is Nothing Then If subSubDirs.Length <> 0 Then GetDirectories(subSubDirs, aNode) End If End If nodeToAddTo.Nodes.Add(aNode) Next subDir End Sub Public Sub New() InitializeComponent() PopulateTreeView() End Sub 'New Private Sub treeView1_NodeMouseClick(ByVal sender As Object, ByVal e As TreeNodeMouseClickEventArgs) Handles TreeView1.NodeMouseClick Dim newSelected As TreeNode = e.Node ListView1.Items.Clear() Dim nodeDirInfo As DirectoryInfo = CType(newSelected.Tag, DirectoryInfo) Dim subItems() As ListViewItem.ListViewSubItem Dim item As ListViewItem = Nothing Dim dir As DirectoryInfo For Each dir In nodeDirInfo.GetDirectories() item = New ListViewItem(dir.Name, 0) subItems = New ListViewItem.ListViewSubItem() {New ListViewItem.ListViewSubItem(item, "Directory"), New ListViewItem.ListViewSubItem(item, _ dir.LastAccessTime.ToShortDateString())} item.SubItems.AddRange(subItems) ListView1.Items.Add(item) Next dir Dim file As FileInfo For Each file In nodeDirInfo.GetFiles() item = New ListViewItem(file.Name, 1) subItems = New ListViewItem.ListViewSubItem() {New ListViewItem.ListViewSubItem(item, "File"), New ListViewItem.ListViewSubItem(item, _ file.LastAccessTime.ToShortDateString())} item.SubItems.AddRange(subItems) ListView1.Items.Add(item) Next file ListView1.AutoResizeColumns(ColumnHeaderAutoResizeStyle.HeaderSize) End Sub Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load ListView1.CheckBoxes = True ListView1.View = View.List End Sub End Class
18 janv. 2015 à 17:54