请教一下treeview的问题

adz 2013-06-03 04:48:00
先上代码
private void comboBox1_Loaded(object sender, RoutedEventArgs e)
{
foreach (System.IO.DriveInfo drv in System.IO.DriveInfo.GetDrives())
{

comboBox1.Items.Add(drv.Name);
comboBox1.SelectedIndex = 0;
System.IO.DirectoryInfo di = new System.IO.DirectoryInfo( comboBox1.SelectedItem.ToString());
DirectoryInfo[] diarr = di.GetDirectories();
this.treeView1.ItemsSource = diarr;
}
}



结果treeview显示出当前盘符下的目录,但是没有"+"号,没有下一层目录,新手学习,概念不清,有点混乱,请指教。

...全文
166 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
vssvss 2013-06-04
  • 打赏
  • 举报
回复


        public void LoadTree(TreeNode parentNode) 
       {
           string path = parentNode.Tag as string;
           foreach (string drv in System.IO.Directory.GetFiles(path))
           {
               TreeNode driverNode = new TreeNode(drv);
               driverNode.Tag = drv;
               driverNode.Nodes.Clear();
               parentNode.Nodes.Add(driverNode);

           }

           foreach (string drv in System.IO.Directory.GetDirectories(path))
           {
               TreeNode driverNode = new TreeNode(drv);
               driverNode.Tag = drv;
               driverNode.Nodes.Clear();
               parentNode.Nodes.Add(driverNode);

           } 
        }

        private void treeView1_BeforeExpand(object sender, TreeViewCancelEventArgs e)
        {

        }


        private void button1_Click(object sender, EventArgs e)
        {
            foreach (System.IO.DriveInfo drv in System.IO.DriveInfo.GetDrives()) 
            {
                TreeNode driverNode = new TreeNode(drv.Name);
                driverNode.Tag = drv.Name;
                driverNode.Nodes.Clear();
                LoadTree(driverNode);
                this.treeView1.Nodes[0].Nodes.Add(driverNode);
            } 
       }
adz 2013-06-04
  • 打赏
  • 举报
回复
太牛了,这个有点超前,一时半会还理解不了啊。 还有版主,我这个是wpf里的,没有BeforeExpand、AfterSelect....
df398286232 2013-06-04
  • 打赏
  • 举报
回复
这个你得先明白树的结构, TreeView TreeView.Nodes TreeNode TreeNode.Nodes 递归遍历逐级添加节点。 楼上的代码很明确,遍历盘符、添加盘中的一级文件、文件夹。 获取所有的结构,那就改一改,加个递归
threenewbee 2013-06-03
  • 打赏
  • 举报
回复
http://bbs.csdn.net/topics/380239317
  • 打赏
  • 举报
回复
树控件是这样用的?没这么用过。不过网络上这种例子搜大把。

110,538

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧