A better alternative to the WinForms Folder Browser Dialog using Ookii.Dialogs

A critique of the shortfalls of the WinForms FolderBrowserDialog, and a quick overview of the alternative provided in the Ookii.Dialogs project.

The WinForms FolderBrowserDialog is a bit clunky:

Yes, it will do exactly as it says - let the user browse a tree of folders, and select one. Unfortunately, it doesn't allow the user to navigate very quickly, type (or paste) a path in themselves, or jump to any of the 'library' or 'quick access' folders. It has the look-and-feel of the old Windows XP style folder browser dialog, regardless of which OS the user is using.

Windows Vista and onwards introduced a better dialog (one that most users will be more familiar with), but you can't use it in WinForms out of the box.

Luckily, Sven Groot (aka Ookii) has put together a nice open source project called Ookii.Dialogs that includes a .NET wrapper of the Vista-style FolderBrowserDialog and can be used as a drop-in replacement for the traditional FolderBrowserDialog (and will even render as such when running on Windows XP). Update/Edit: As of 2018, the project is now maintained by C. Augusto Proiete on GitHub (WPF / WinForms)

This gives us the much nicer folder browser dialog:

Ookii.Dialogs also includes a number of other useful dialogs:

  • TaskDialog - A task dialog proving a superset of the standard message box functionality.
  • ProgressDialog - A dialog that displays a progress bar.
  • CredentialDialog - A dialog that accepts credentials from the user.
  • InputDialog - A dialog that accepts arbitrary text input from the user.
  • VistaOpenFileDialog - A Vista-style OpenFileDialog.
  • VistaSaveFileDialog - A Vista-style SaveFileDialog.
  • VistaFolderBrowserDialog - A Vista-style FolderBrowserDialog.

Ookii.Dialogs is available under the 3-clause BSD license, and can be obtained from NuGet for WPF and WinForms

Posted by Matthew King on 2 May 2017
Permission is granted to use all code snippets under CC BY-SA 3.0 (just like StackOverflow), or the MIT license - your choice!