I have recently started working on the first extension to the Toolkit called the Krypton Navigator. Your probably wondering what the control will do, well wonder no more.
In any component suite there are usually several controls to choose from when you need to allow the user to select between different pages. The traditional TabControl achieves it using a collection of TabPages and showing tab headers for selection. The Outlook style control allows selection using a set of headings at the bottom of the control with an overflow area. A Wizard control has a selection of pages but uses buttons for moving forwards and backwards through the list.
All these controls are doing the same thing, allowing the user to move between a set of pages. So why not have just a single control that provides different modes rather than having a range of different controls. This is the purpose of the Krypton Navigator, to provide a range of different user interfaces for allowing the user to navigate around a set of Krypton Page instances.
This has some big advantages for developers. First of all you can expose this extra flexibility to the user of the application. Let them have an option to choose how they prefer to navigate around. They might prefer an outlook style instead of a tab control or vica versa.
Instead of having to delete a control and adding back a different control in order to change the style of navigation you would just need to change the mode setting on the Navgiator. Much easier to manage.
Another advantage is that as new methods of navigating come in and out of fashion a new mode can just be added to the Navigator. You automatically have access to this new mode in the next software release and do not need to learn how to use a completely new control or replace a control in your app.
So thats the concept and I have now started work in earnest. I will begin by adding the easiest and simplest modes first and build up to the more complex ones over time.