ALAINBISC
Messages postés2Date d'inscriptionsamedi 17 septembre 2011StatutMembreDernière intervention18 septembre 2011
-
17 sept. 2011 à 19:49
ALAINBISC
Messages postés2Date d'inscriptionsamedi 17 septembre 2011StatutMembreDernière intervention18 septembre 2011
-
18 sept. 2011 à 16:00
Bonjour à tous,
Je viens de m'inscrire. J'ai eu beau parcourir plusieurs forums, je n'ai pas trouvé la réponse à la question suivante:
COMMENT FAIRE POINTER UN TREEVIEW SUR "ORDINATEUR" au lieu de "C:" au démarrage dans l'exemple de code suivant:
Imports System.IO
Public Class TREEVIEW
Private Sub TREEVIEW_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim oNode As New System.Windows.Forms.TreeNode
Try
oNode.ImageIndex = 0 ' ferme
oNode.SelectedImageIndex = 0
oNode.Text = "C:"
Merci d'avance
ALAINBISC
Messages postés2Date d'inscriptionsamedi 17 septembre 2011StatutMembreDernière intervention18 septembre 2011 18 sept. 2011 à 16:00
CF2i, Bonjour,
J'ai bien reçu votre réponse et vous en remercie mais je ne m'en sors toujours pas.
Comme tout travail informatique commence par chercher les informations à traiter (fichiers), je suis surpris de ne pas avoir trouvé le code source d'un navigateur ultra simplifié, à base d'un treeview, qui permette d'aller chercher des fichiers dans tous les dossiers et dans tous les lecteurs du système!
voici le listing dont je dispose, que, faut-il faire pour que cela marche sans passer trois ans à tourner en rond pour redécouvrir le fil à couper le beurre!...
Imports System.io
Public Class Form1
Dim chemin, selection As String
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim oNode As New System.Windows.Forms.TreeNode()
Try
oNode.ImageIndex = 0
oNode.SelectedImageIndex = 0
oNode.Text = "C:"
TreeView1.Nodes.Add(oNode)
oNode.Nodes.Add("")
Catch ex As Exception
MsgBox("Impossible de créer le noeud initial:" & ex.ToString)
End
End Try
End Sub
Private Sub AfficheFils(ByVal oParent As System.Windows.Forms.TreeNode)
Dim oFS As New DirectoryInfo(oParent.FullPath & "")
Dim oDir As DirectoryInfo
Dim oFile As FileInfo
Try
For Each oDir In oFS.GetDirectories()
Dim oNode As New System.Windows.Forms.TreeNode()
oNode.Text = oDir.Name
oNode.ImageIndex = 0
oNode.SelectedImageIndex = 0
oParent.Nodes.Add(oNode)
oNode.Nodes.Add("")
Next
chemin = oParent.FullPath + ""
Catch ex As Exception
MsgBox("Impossible de lister l'arborescence de " & oParent.FullPath & ":" & ex.ToString)
End Try
Try
For Each oFile In oFS.GetFiles()
Dim oNode As New System.Windows.Forms.TreeNode()
oNode.Text = oFile.Name
oNode.ImageIndex = 2
oNode.SelectedImageIndex = 2
oParent.Nodes.Add(oNode)
Next
Catch ex As Exception
MsgBox("Impossible de lister les fichiers dans " & oParent.FullPath & ":" & ex.ToString)
End Try
End Sub
Private Sub TreeView1_AfterSelect(ByVal sender As Object, ByVal e As System.Windows.Forms.TreeViewEventArgs) Handles TreeView1.AfterSelect
selection = chemin + e.Node.Text
End Sub
Private Sub TreeView1_BeforeExpand(ByVal sender As Object, ByVal e As System.Windows.Forms.TreeViewCancelEventArgs) Handles TreeView1.BeforeExpand
If e.Node.ImageIndex = 2 Then Exit Sub
Try
If e.Node.GetNodeCount(False) 1 And e.Node.Nodes(0).Text "" Then
'e.Node.Nodes(0).Remove()
AfficheFils(e.Node)
End If
Catch ex As Exception
MsgBox("Impossible de développer " & e.Node.FullPath & ":" & ex.ToString)
End Try
If e.Node.GetNodeCount(False) > 0 Then
e.Node.ImageIndex = 1
e.Node.SelectedImageIndex = 1
End If
End Sub