private void BrowsePathInternal() { switch (PathType) { case EType.OpenFile: { var dlg = new OpenFileDialog { Title = DialogTitle, Filter = FileFilter, FileName = SelectedPath }; if (dlg.ShowDialog(this) != true) { break; } SelectedPath = dlg.FileName; break; } case EType.SaveFile: { var dlg = new SaveFileDialog { Title = DialogTitle, Filter = FileFilter, FileName = SelectedPath }; if (dlg.ShowDialog(this) != true) { break; } SelectedPath = dlg.FileName; break; } case EType.SelectDirectory: { var dlg = new OpenFolderUI { Title = DialogTitle, SelectedPath = SelectedPath }; if (dlg.ShowDialog(this) != true) { break; } SelectedPath = dlg.SelectedPath; break; } default: { throw new Exception($"Unknown path type: {PathType}"); } } }
/// <summary></summary> private void SetupUI() { m_lbl_version.Text = $"Dll Version: {VirtualMidi.VersionString}\r\n" + $"Driver Version: {VirtualMidi.DriverVersionString}\r\n"; m_btn_make_instrument.Click += (s, a) => { var dlg = new OpenFolderUI { Title = "Select Root instrument folder" }; if (dlg.ShowDialog(this) != DialogResult.OK) { return; } m_audio.WaveBankCreateMidiInstrument("TEST", dlg.SelectedPath, "D:\\dump\\test.xwb", "D:\\dump\\test.h"); }; m_btn_play.Click += (s, a) => { PlayWave(); }; }
/// <summary>Show the folder browser dialog</summary> public static bool ShowDialog(this OpenFolderUI dlg, DependencyObject dep) { var hwnd = dep != null ? ((HwndSource)PresentationSource.FromDependencyObject(dep)).Handle : IntPtr.Zero; return(dlg.ShowDialog(hwnd)); }