我有使用InitialDirectory路径的问题,我使用了下面显示的部分代码。 OpenDialog总是显示我上次打开文件的目录,但我无法设置新的相对路径..我尝试设置绝对路径,但它也不起作用。
private static string path = System.Reflection.Assembly.GetExecutingAssembly().Location;
public static string OpenDialog()
{
// Create OpenDialog
var dlg = new Microsoft.Win32.OpenFileDialog();
// initial directory for OpenFileDialog need fix
if(Directory.Exists(path))
{
dlg.InitialDirectory = path;
}
dlg.RestoreDirectory = true;
答案 0 :(得分:1)
在您的示例中,'path'被设置为.exe,这将导致if(Directory.Exists(path))失败,因此,对话框将打开到最后一个已知的正确目录,因为InitialDirectory不会设置为您想要的值。尝试首先对已知良好的目录路径进行硬编码。或者你可以做这样的事情来解决它:
path = Directory.GetParent(System.Reflection.Assembly.GetExecutingAssembly().Location).FullName;