【问题标题】:Open File Dialog Initial directory打开文件对话框初始目录
【发布时间】:2014-10-29 16:38:26
【问题描述】:

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;

【问题讨论】:

  • var initialDirectory = Path.GetDirectoryName(path)
  • 你看过OpenFileDialog method吗?你可以在代码中设置文件管理器/默认目录..查找MSDN上的方法Open File Dialog Initial Directory从简单的谷歌搜索中获取
  • 我试过了,但它不适合我

标签: c# wpf dialog directory


【解决方案1】:

在您的示例中,“路径”被设置为您的 .exe,这将导致 if (Directory.Exists(path)) 失败,因此,对话框将打开到最后一个已知的正确目录,因为 InitialDirectory 不会设置为您想要的值。首先尝试简单地硬编码一个已知良好的目录路径。或者你可以做这样的事情来修复它:

path = Directory.GetParent(System.Reflection.Assembly.GetExecutingAssembly().Location).FullName;

【讨论】:

  • 你试过了吗?它应该可以解决您的问题
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2013-07-19
  • 2010-12-27
  • 1970-01-01
  • 2018-03-22
  • 1970-01-01
  • 2010-12-11
  • 1970-01-01
相关资源
最近更新 更多