Unten ist mein CodeWie Verzeichnisse in einem TreeView angezeigt werden?
DirectoryInfo directoryInfo = new DirectoryInfo(@"C:\Users\Shahul\Documents\Visual Studio 2010\Projects\TreeView\TreeView\bin\FileExplorer");
private void Form1_Load(object sender, EventArgs e)
{
if (Directory.Exists("FileExplorer"))
{
try
{
DirectoryInfo[] directories = directoryInfo.GetDirectories();
foreach (FileInfo file in directoryInfo.GetFiles())
{
if (file.Exists)
{
TreeNode nodes = treeView.Nodes[0].Nodes.Add(file.Name);
}
}
if (directories.Length > 0)
{
foreach (DirectoryInfo directory in directories)
{
TreeNode node = treeView.Nodes[0].Nodes.Add(directory.Name);
node.ImageIndex = node.SelectedImageIndex = 0;
foreach (FileInfo file in directory.GetFiles())
{
if (file.Exists)
{
TreeNode nodes = treeView.Nodes[0].Nodes[node.Index].Nodes.Add(file.Name);
}
}
}
}
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
}
Wenn ich laufen bekomme ich nur eine leere treeview Form? Kann nicht herausfinden, was der Fehler ist?
Btw das meine erste Post in Stack Overflow.
ich Ihren Code kopiert und es scheint an meinem Ende zu arbeiten. (Neben Warnungen über bestimmte Ordner, die aufgrund von Zugriffsrechten nicht lesbar sind) Versuchen Sie übrigens, diese Funktion in eine rekursive Funktion zum Hinzufügen der Knoten und so weiter zu verwandeln. Könnte Ihnen bessere Klarheit geben, was passiert und wo Ihr Fehler sein könnte. Sie setzen auch eine Variable Knoten, mit denen Sie nichts tun (TreeNode Knoten wird zugewiesen, wird aber nicht verwendet). –
Debuggen Sie und stellen Sie sicher, dass die Struktur Elemente enthält, bevor die Funktion zurückkehrt. Vielleicht fügen Sie dem falschen Baum Knoten hinzu. Vielleicht wird der Baum direkt danach irgendwo geräumt. Debuggen. – SimpleVar