保存文件对话框 - 路径无效

时间:2010-02-15 23:58:23

标签: c# wpf savefiledialog

App.config中:

<add key="SaveDraftPath" value="C:\Drafts\"/>

C#:

var saveDraftPath = ConfigurationManager.AppSettings["SaveDraftPath"]; 
var sfDialog = new SaveFileDialog();
sfDialog.InitialDirectory = saveDraftPath;
sfDialog.FileName = "FILE";

出于某种原因,这不会在计划的路径中打开文件浏览器,任何人都知道为什么或如何修复?

我现在尝试过这个,但仍然无效:

var saveDraftPath = Path.GetFullPath(ConfigurationManager.AppSettings["SaveDraftPath"]);
MessageBox.Show("does directory exist : " + Directory.Exists(saveDraftPath));
var sfDialog = new SaveFileDialog();
sfDialog.InitialDirectory = saveDraftPath;
sfDialog.FileName = "FILE";

和Directory.Exists(saveDraftPath)返回true ..嗯?!

修改:上面的代码对我有用了一次。该代码适用于迄今为止已回答的所有人。但它仍然无法正常工作。所以我怀疑问题是某种本地/历史设置阻止了它。有谁知道为什么会发生这种情况?

2 个答案:

答案 0 :(得分:1)

试试这个:

  

var path = Path.GetFullPath(ConfigurationManager.AppSettings [“SaveDraftPath”])

同时查看Path课程,有几个有用的 methods

答案 1 :(得分:0)

这对我有用(从配置中获取正确的路径)

var saveDraftPath =
           ConfigurationManager.AppSettings["SaveDraftPath"];
        var sfDialog = new SaveFileDialog();
        sfDialog.InitialDirectory = saveDraftPath;
        sfDialog.FileName = "FILE";

        if (sfDialog.ShowDialog() == DialogResult.OK)
        {
            //do stuff
        }

查看更多http://msdn.microsoft.com/en-us/library/system.windows.forms.savefiledialog.aspx