The bread crumb control was originally invented for use on Internet sites. With web sites getting ever larger the user was getting lost inside deep hierarchies; finding it hard to get back to a higher level. So the control acts like a trail of bread crumbs, marking the path back to the start of the navigation process.
What makes the control so compelling is the combination of small area and ease of use. As soon as you start using the control you just intuitively understand what it does. But websites are not the only place that you have complex hierarchies of choices. Many client applications have the same issue. So the latest addition to the Toolkit is the KryptonBreadCrumb.
Here you can see the control in action…

Each bread crumb entry is presented as a button, with those having more than one child being drop down buttons. Pressing the drop down arrow shows a context menu with all the available child options. Selecting a child item from the menu creates the next bread crumb and places it to the right. At any time you can select the button portion of a bread crumb and have the trail finish at that clicked entry.
Like most Krypton controls you can add ButtonSpec entries to add additional button functionality. Why not add a close button that when pressed moves you back to the root entry…

Or you could add button which presents a context menu with additional options such as shortcuts to common navigation paths.
As part of the associated demo application I added an example of another idea. Combining the KryptonBreadCrumb with a TreeView control. By using the controls selection events I can keep the two controls in sync and allow the user to operate using whichever of the two mechanisms they prefer…

Defining your bread crumb options is very simple. The root is a KryptonBreadCrumbItem that has a child collection that can contain the same type. So just build up a tree hierarchy of options as you would with a traditional TreeView control.
Just before the drop down context menu is shown an event is fired allowing you to customize the displayed menu. So you can easily add extra options or use it to dynamically supply the children at the last moment.
June 6th, 2008 at 11:49 pm
VERY interesting! :D
I think the best exaple for a not-in-a-website-use of a breadcrumbcontrol is the addressbar in the vista explorer
See:
http://common.ziffdavisinternet.com/util_get_image/13/0,1425,sz=1&i=138432,00.jpg
June 7th, 2008 at 3:40 am
It sounds really great!! :)
As Waescher I immediately thought to the explorer bar in Vista.
June 7th, 2008 at 6:29 am
Nice control Phil!
However, is there a chance that you add scroll bars anytime soon? They seem to be the missing link to a fully cryptonized application at the moment.
Thanks
June 7th, 2008 at 6:33 pm
The control is all fine and dandy, but it looks ugly with the treeview.
If you marry the breadcrumb control with the tree view, the selected node is still the standard blue highlight, which for me at least is rather ugly.
March 22nd, 2010 at 6:45 pm
All the text disappears – when you resize KryptonBreadCrumb to sit alongside a ToolStrip (with a height of 25).
Is there a solution that I might be overlooking?
Please help!
March 23rd, 2010 at 5:21 am
In case anybody else had this problem, I found out in the forum that changing the font size was the solution.