Я использую свой собственный пользовательский вид, чтобы показывать файлы и папки, а также использовать окно поиска для перехода к определенной папке. В этом случае Как отправить сообщение в диалог "Открыть/сохранить файл", чтобы принудительно применить его для изменения текущей отображаемой папки.
например. Если в диалоговом окне отображаются файлы и папки текущей отображаемой папки "C: \", я хочу, чтобы API (или любой фрагмент кода) принудительно применял для изменения текущей папки на "D: \"
Установите 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);
}
}
Вы можете открыть диалоговое окно в определенном каталоге, используя InitialDirectory
.
Если вы хотите контролировать то, что делает диалог во время выполнения, это немного сложнее.
установите InitialDirectory свойство на любой путь