我对这两个特殊文件夹之间的差异感到困惑.
这是一个代码片段,用于编写每个输出,但它们输出相同的内容.
string path = Environment.GetFolderPath(Environment.SpecialFolder.Desktop);
string pathTwo = Environment.GetFolderPath(Environment.SpecialFolder.DesktopDirectory);
Console.WriteLine(path);
Console.WriteLine(pathTwo);
Console.ReadKey();
Run Code Online (Sandbox Code Playgroud)
根据MSDN文档(适用于.NET 1.1):
桌面
逻辑桌面而不是物理文件系统位置.
DesktopDirectory
用于在桌面上物理存储文件对象的目录.不要将此目录与桌面文件夹本身混淆,后者是一个虚拟文件夹.
这说the logical Desktop rather than the physical file system location什么意思?另外,virtual folder简单来说是什么?
在较新的.NET 4版本的文档中,我注意到他们删除了Desktop完全和唯一的左侧DesktopDirectory.为什么是这样?
有谁知道自定义System.Windows.Forms.FolderBrowserDialog的最简单方法是什么,因此可以使用树下方文本框中的文本输入路径.
我想要这样,所以很容易选择未映射的UNC路径.
看起来这个KB有一些支持信息.
我知道如果我SelectedPath在显示对话框之前设置,我可以在对话框打开时默认打开文件夹.但是,我想要使用的文件夹按字母顺序排在列表的下方.我有一个与Windows中的一个库相同的文件夹,它显示在列表中,是否有任何方法可以将其默认为文件夹的库版本而不是文件夹的硬盘版本?
另一个可能的解决方案是,如果它仍然使用驱动器版本,但它会自动将窗口向下滚动到选定的位置.有没有办法做这些解决方案?
目前如何显示

我多么希望它出现

所以我有一个文件夹浏览器对话框,我遇到了所选路径的问题.
所以我希望选择打开的上一个文件夹,我希望它向下滚动,以便前一个文件夹可见.
现在奇怪的是,这种方法很好,但有时只是.这完全是随机的.路径始终突出显示,但并不总是向下滚动.
有时当我开始调试并单击浏览时,它将打开并向下滚动到我想要的位置.然后我单击确定,再次单击"浏览",它是否完全随机,无论它是否向下滚动到应该的位置.
有什么想法吗?
编辑:我搜索了很多,发现了这一点.它似乎与我的问题非常相似.
"我已经在Vista 32,XP 32,Win 7 32和64上尝试过测试应用程序.除了Windows 7之外,其他所有功能都可以正常运行.32和64似乎都有同样的问题."
他们说这是Windows 7的一个小故障......?