相关疑难解决方法(0)

OpenFileDialog InitialDirectory不起作用

我有这个代码:

OpenFileDialog dialog = new OpenFileDialog();
dialog.InitialDirectory = GetDataPath(...);
dialog.AutoUpgradeEnabled = false;
dialog.Filter = GetFilter(...);
if (dialog.ShowDialog(this) == DialogResult.OK)
{...}
Run Code Online (Sandbox Code Playgroud)

我希望,在每次运行时,将对话框放在同一文件夹 - GetDataPath(...)文件夹中,但它仍保留在最后选择的文件夹中.

这是正确的行为吗?你知道怎么解决这个问题吗?如果Windows在注册表中保存上次使用的路径,您知道如何找到它吗?

EDIT1:

附:

dialog.AutoUpgradeEnabled = true;
Run Code Online (Sandbox Code Playgroud)

按预期工作......

EDIT2:与此问题相同在Windows 7中获取SaveFileDialog的InitialDirectory属性的任何已知问题?

c# openfiledialog winforms

6
推荐指数
3
解决办法
2万
查看次数

如何将OpenFileDIalog上的初始目录设置为C#中的users`Download`文件夹

好的,我有一个OpenFileDialog,我想将初始目录设置为用户的'Download'文件夹.这是一个内部应用程序,因此,我确信用户将使用Windows 7.

var ofd = new OpenFileDialog();

//This doesn't work
ofd.InitialDirectory =
    Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.Personal), "Downloads");

//This doesn't work either
ofd.InitialDirectory = @"%USERPROFILE%\Downloads";

ofd.Filter = "Zip Files|*.zip";

ofd.ShowDialog();

txtFooBar.Text = ofd.FileName;
Run Code Online (Sandbox Code Playgroud)

到目前为止我已经尝试了上述内容,但都没有工作 没有抛出异常,它只是没有将初始目录设置为downloads文件夹.

我哪里错了?

谢谢

c# openfiledialog

6
推荐指数
2
解决办法
2万
查看次数

OpenFileDialog InitialDirectory不接受相对路径吗?

dialog是一个OpenFileDialog类对象,我正在使用ShowDialog()方法.

当我使用包含相对路径的路径时,例如:

dialog.InitialDirectory = "..\\abcd";
dialog.InitialDirectory = Directory.GetCurrentDirectory() + "..\\abcd";
Run Code Online (Sandbox Code Playgroud)

ShowDialog() 崩溃,我只能做一个明确的路径,从磁盘驱动器开始:

dialog.InitialDirectory = "C:\\ABC\\DEF\\abcd";
Run Code Online (Sandbox Code Playgroud)

在这种情况下,我希望路径是我的.exe的当前目录的1级,然后向下到目录abcd)
.exe的当前路径可以找到Directory.GetCurrentDirectory(),这是完全正常的,但我不能继续"..")

目录层次结构如下:

ABC
    DEF 
        abcd (where i want)
        defg (where .exe is at)
Run Code Online (Sandbox Code Playgroud)

那么,有没有任何使用方法"..\\"InitialDirectory
或者我必须使用明确的路径?
谢谢!

c# relative-path openfiledialog

4
推荐指数
1
解决办法
7281
查看次数

WPF OpenFileDialog如何跟踪上次打开文件的目录?

我们知道WPF OpenFileDialog不再更改应用程序的工作目录和RestoreDirectory属性"未实现".但是,在后续打开时,其初始目录默认为最后打开的文件而不是原始工作目录,因此必须将此信息存储在某处.我想知道是否可以从用户代码中获取/设置它?

openfiledialog working-directory

2
推荐指数
1
解决办法
1562
查看次数