文件打开/保存对话框

时间:2010-05-05 08:07:45

标签: c# api winapi

我使用自己的自定义视图来显示文件和文件夹,还使用搜索框跳转到特定文件夹。在这种情况下,如何向文件打开/保存对话框发送消息以强制它更改当前显示的文件夹。

e.g。如果对话框显示当前显示文件夹“C:\”的文件和文件夹,我想要一个API(或任何一段代码)强制将当前文件夹更改为“D:\”

3 个答案:

答案 0 :(得分:2)

您可以使用InitialDirectory在特定目录中打开对话框。

如果你想控制对话框在运行时的作用,那就有点复杂了。

答案 1 :(得分:2)

创建后设置SaveFileDialog.InitialDirectory,但在打开它之前。

例如:

Stream myStream = null;
SaveFileDialog saveFileDialog1 = new SaveFileDialog();

saveFileDialog1 .InitialDirectory = "d:\\" ;
saveFileDialog1 .Filter = "txt files (*.txt)|*.txt|All files (*.*)|*.*" ;
saveFileDialog1 .FilterIndex = 2 ;
saveFileDialog1 .RestoreDirectory = true ;

if(saveFileDialog1 .ShowDialog() == DialogResult.OK)
{
    try
    {
        if ((myStream = saveFileDialog1 .OpenFile()) != null)
        {
            // Code to write the stream goes here.
            myStream.Close();

        }
    }
    catch (Exception ex)
    {
        MessageBox.Show("Error: Could not save file to disk. Original error: " + ex.Message);
    }
}

答案 2 :(得分:2)

InitialDirectory属性设置为任何路径