如何处理主目录和;“我的电脑”;在c#TreeView中
我正在制作一个文件系统树视图。我希望最初的四个项目是 +计算机 +桌面 +我的文件 +C:\ 这些都是预先填充的,这样当单击+时,子目录就会出现,并立即填充。非常适合C:\——就像windows资源管理器一样。但其他三个只是以名字的形式出现。它们显然与实际的文件系统位置无关。如何添加其他三个文件系统位置?我试过:如何处理主目录和;“我的电脑”;在c#TreeView中,c#,windows,treeview,filesystems,C#,Windows,Treeview,Filesystems,我正在制作一个文件系统树视图。我希望最初的四个项目是 +计算机 +桌面 +我的文件 +C:\ 这些都是预先填充的,这样当单击+时,子目录就会出现,并立即填充。非常适合C:\——就像windows资源管理器一样。但其他三个只是以名字的形式出现。它们显然与实际的文件系统位置无关。如何添加其他三个文件系统位置?我试过: TreeNode my_computer = new TreeNode("Computer"); TreeNode desktop = new TreeNode(@"%UserPr
TreeNode my_computer = new TreeNode("Computer");
TreeNode desktop = new TreeNode(@"%UserProfile%\Desktop");
TreeNode c_drive = new TreeNode(@"C:\");
TreeNode my_documents = new TreeNode(@"%UserProfile%\My Documents");
也没有%UserProfile%。两者都不起作用。您可能需要查看
环境。SpecialFolder
枚举:
它们是虚拟shell文件夹。您必须使用本机shell函数枚举它们。哦,快乐。添加对c:\windows\system32\shell32.dll的引用以开始该操作。用Object Browser查看它,了解谷歌应该做什么。此外,你可能想重新考虑显示绝对路径(如果你这样做的话)。通过在节点文本中显示相对路径和在节点标记中显示绝对路径,避免重复和冗长的节点文本