using System.IO; using System.Windows.Forms; using UIResources = BookmarkManager.UIResource; namespace RyzStudio.Windows.ThemedForms { public class TFolderTextBox : TButtonTextBox { public TFolderTextBox() : base() { this.NormalImage = UIResources.folder; this.HighlightImage = UIResources.folder2; this.Text = string.Empty; } public FolderBrowserDialog FolderDialog { get; set; } = null; protected override void imageBox1_MouseClick(object sender, MouseEventArgs e) { if (e.Button != MouseButtons.Left) { return; } if (this.FolderDialog == null) { this.FolderDialog = new FolderBrowserDialog(); this.FolderDialog.Description = "Choose a directory"; } if (!string.IsNullOrWhiteSpace(this.Text)) { if (Directory.Exists(this.Text)) { this.FolderDialog.SelectedPath = this.Text; } } if (this.FolderDialog.ShowDialog() == System.Windows.Forms.DialogResult.OK) { this.Text = this.FolderDialog.SelectedPath; } } } }