下面是我的代碼如何在TreeView中顯示目錄?
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);
}
}
}
當我跑我只是得到了一個空白樹狀形式?無法弄清楚什麼是錯誤?
順便說一句,這是我在Stack Overflow中的第一篇文章。
我複製你的代碼,它似乎是工作在我結束。 (除了因爲訪問權限而導致某些文件夾無法讀取的警告)順便說一句,嘗試使這個函數成爲一個遞歸的函數來添加節點和什麼。可以讓你更清楚地瞭解正在發生的事情以及你的錯誤可能在哪裏。 此外,你正在設置一個變量節點,你什麼都不做(TreeNode節點被賦值但未被使用)。 – 2013-05-01 08:57:56
調試並確保樹在函數返回之前確實包含元素。也許你正在將節點添加到錯誤的樹中。也許這棵樹在之後直接被清除。調試。 – SimpleVar 2013-05-01 09:01:17