/// <summary> /// FileDialog for selecting any folder /// </summary> /// <param name="browserProperties">Special Properties of File Dialog</param> /// <param name="folderpath">User picked path(s) (Callback)</param> public void OpenFolderBrowser(BrowserProperties browserProperties, Action <string> folderpath) { var ofd = new VistaFolderBrowserDialog(); ofd.Description = browserProperties.title; ofd.UseDescriptionForTitle = true; if (ofd.ShowDialog(new WindowWrapper(GetActiveWindow())) == DialogResult.OK) { folderpath(ofd.SelectedPath); } }
/// <summary> /// FileDialog for picking multiple file(s) /// </summary> /// <param name="browserProperties">Special Properties of File Dialog</param> /// <param name="filepath">User picked path(s) (Callback)</param> public void OpenMultiSelectFileBrowser(BrowserProperties browserProperties, Action <string[]> filepath) { var ofd = new VistaOpenFileDialog(); ofd.Multiselect = true; ofd.Title = browserProperties.title == null ? "Select a File" : browserProperties.title; ofd.InitialDirectory = browserProperties.initialDir == null ? @"C:\" : browserProperties.initialDir; ofd.Filter = browserProperties.filter == null ? "All files (*.*)|*.*" : browserProperties.filter; ofd.FilterIndex = browserProperties.filterIndex + 1; ofd.RestoreDirectory = browserProperties.restoreDirectory; if (ofd.ShowDialog(new WindowWrapper(GetActiveWindow())) == DialogResult.OK) { filepath(ofd.FileNames); } }
/// <summary> /// FileDialog for saving any file, returns path with extention for further uses /// </summary> /// <param name="browserProperties">Special Properties of File Dialog</param> /// <param name="defaultFileName">Default File Name</param> /// <param name="defaultExt">Default File name extension, adds after default file name.</param> /// <param name="savepath">User picked path(s) (Callback)</param> public void SaveFileBrowser(BrowserProperties browserProperties, string defaultFileName, string defaultExt, Action <string> savepath) { var ofd = new VistaSaveFileDialog(); ofd.FileName = defaultFileName; ofd.DefaultExt = defaultExt; ofd.CheckPathExists = true; ofd.OverwritePrompt = true; ofd.Title = browserProperties.title; ofd.InitialDirectory = browserProperties.initialDir == null ? @"C:\" : browserProperties.initialDir; ofd.Filter = browserProperties.filter; ofd.FilterIndex = browserProperties.filterIndex + 1; ofd.RestoreDirectory = browserProperties.restoreDirectory; if (ofd.ShowDialog(new WindowWrapper(GetActiveWindow())) == DialogResult.OK) { savepath(ofd.FileName); } }