Off the top of my head, this is how I did it
var dialog = new CommonOpenFileDialog
{
EnsurePathExists = true,
EnsureFileExists = false,
AllowNonFileSystemItems = false,
DefaultFileName = "Select Folder",
Title = "Select The Folder To Process"
};
dialog.SetOpenButtonText("Select Folder");
if (dialog.ShowDialog() == CommonFileDialogResult.Ok)
dirToProcess = Directory.Exists(dialog.FileName) ? dialog.FileName : Path.GetDirectoryName(dialog.FileName);
EDIT: Holy 2 years ago Batman!
Seems like few changes were made, snippet below seems to do the job
var openFolder = new CommonOpenFileDialog();
openFolder.AllowNonFileSystemItems = true;
openFolder.Multiselect = true;
openFolder.IsFolderPicker = true;
openFolder.Title = "Select folders with jpg files";
if (openFolder.ShowDialog() != CommonFileDialogResult.Ok)
{
MessageBox.Show("No Folder selected");
return;
}
// get all the directories in selected dirctory
var dirs = openFolder.FileNames.ToArray();