2013-01-12 66 views
-3

我有一个显示隐藏文件和系统文件目录隐藏系统和一个TreeView文件浏览器隐藏文件

public TreeNode GetDirectory(TreeNode parentNode) 
    { 
     DirectoryInfo d = new DirectoryInfo(parentNode.FullPath); 
     DirectoryInfo[] dInfo = d.GetDirectories() 
            .Where(di => !di.Attributes.HasFlag(FileAttributes.System)) 
            .Where(di => !di.Attributes.HasFlag(FileAttributes.Hidden)) 
            .ToArray(); 
     parentNode.Nodes.Clear(); 
      if (dInfo.Length > 0) 
      { 
       TreeNode treeNode = new TreeNode(); 
       foreach (DirectoryInfo driSub in dInfo) 
       { 
        treeNode = parentNode.Nodes.Add(driSub.Name); 
        treeNode.Nodes.Add(""); 

       } 
      } 

错误是错误1“的System.Array”不包含一个C#WinForms应用程序一个TreeView定义“在哪里”,没有扩展方法“去哪儿”接受式“的System.Array”的第一个参数可以找到(是否缺少using指令或程序集引用?)

+0

阅读其他的答案[点击这里](http://stackoverflow.com/questions/14223076/dont-show-hidden-files-in-a-directory-listview/14 223214#14223214) – I4V

+0

我已阅读它,即时尝试添加它,但它说,哪里子句不能被称为system.array类型...我试图转换它,但没有好 – engineer41

+0

我的意思是'其他答案'不是你接受的一个。 – I4V

回答

0
DirectoryInfo d = new DirectoryInfo(@"c:\"); 
DirectoryInfo[] dInfo = d.GetDirectories() 
          .Where(di => !di.Attributes.HasFlag(FileAttributes.System)) 
          .Where(di => !di.Attributes.HasFlag(FileAttributes.Hidden)) 
          .ToArray(); 
+0

我已更新我的问题错误PLZ看看 – engineer41

+0

@ engineer41不要忘记包括'使用System.Linq' – I4V