【问题标题】:SaveFileDialog InitialDirectorySaveFileDialog 初始目录
【发布时间】:2015-05-26 09:58:33
【问题描述】:

我有一个用 VSTO 和 VS2013 编写的 Outlook 2013 插件。我有一个保存文件对话框,在其中将初始目录设置为网络挂载。使用MailItem.SaveAs() 保存到路径有效,但是当我将它与saveFileDialog1.InitialDirectory = "W:/etc/etc/"; 一起使用时,我只是将我的文档库作为初始目录。为什么它可能不起作用?

下面是相关代码:

        SaveFileDialog saveFileDialog1 = new SaveFileDialog();
        saveFileDialog1.FileName = filename;
        saveFileDialog1.InitialDirectory = path;
        saveFileDialog1.AddExtension = false;
        saveFileDialog1.CheckFileExists = true;
        saveFileDialog1.DefaultExt = "\".mht\"";
        saveFileDialog1.Filter = "\"MHT Files|*.mht|All Files|*.*\"";

        DialogResult result = saveFileDialog1.ShowDialog();

这就是所有相关代码。 FileName 工作正常,路径格式为“W:/Folder/Folder/”

谢谢

【问题讨论】:

  • 你试过path = @"W:\Folder\Folder\"吗?

标签: c# savefiledialog


【解决方案1】:

似乎 InitialDirectory 不接受路径中的 / 但需要反斜杠

这个例子适合我。

SaveFileDialog saveFileDialog1 = new SaveFileDialog();
saveFileDialog1.FileName = "c:/temp/somefilename.txt";
saveFileDialog1.InitialDirectory = "c:\\temp\\";
saveFileDialog1.AddExtension = false;
saveFileDialog1.CheckFileExists = true;
saveFileDialog1.DefaultExt = "\".mht\"";
saveFileDialog1.Filter = "\"MHT Files|*.mht|All Files|*.*\"";

DialogResult result = saveFileDialog1.ShowDialog();

【讨论】:

    【解决方案2】:

    看看this关于字符串字面量的文章

    如果你想要一个反斜杠,你应该使用双反斜杠

    saveFileDialog1.InitialDirectory = "W:\\etc\\etc\\";
    

    或使用@符号:

    saveFileDialog1.InitialDirectory = @"W:\etc\etc\";
    

    您还应该设置 RestoreDirectory 以便将工作目录设置回您的应用程序目录。 检查此link 以供参考

    saveFileDialog1.RestoreDirectory = true;
    

    【讨论】:

    • 尽管单斜杠适用于 MailItem.SaveAs(),但对于 InitialDirectory 我需要反斜杠吗?
    • 我认为不管你有正斜杠还是反斜杠,c#会在内部将它转换为反斜杠。但问题是你需要把它变成一个乱七八糟的东西。
    • 我试过了,但仍然没有给我正确的初始目录
    • 似乎 InitialDirectory 不接受路径中的 / 但需要反斜杠 请参阅下面的答案
    • 我试过反斜杠的方法,还是有问题。我在调用之前直接检查了初始目录,即使使用反斜杠它也不起作用编辑:我得到它的工作,一些逻辑被搞砸了
    猜你喜欢
    • 2010-11-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-06-22
    • 1970-01-01
    • 2018-02-05
    相关资源
    最近更新 更多