- Added
ShortcutsEnabled
property. Iffalse
, theCtrl+Tab
hotkey is disabled
- Attempting to set the
SelectedIndex
property to a value less than -1 now throws - Setting the
SelectedIndex
property now calls the full set of selection and selection events
- Added
Ctrl+Tab
hotkey to cycle tabs, when theTabList
or a hosted control has focus. - Added
TabListManager
class with aRenderer
property, the originalTabListRenderer.DefaultRenderer
has been marked as obsolete and will be removed in a future update - The
Enabled
property is now exposed forTabListPage
instances and the control will now correctly behave and render according to the enabled state of individual pages, and the overall control
- The default
VisualStudioTabListRenderer
no longer draws a solid fill for tab buttons in a default state, allowing the background image (if set) to appear - The
TabList.Renderer
property no longer appears in Properties windows or serialised by the designer - The misspelled
ListBoxTabListeRenderer
class has been marked as obsolete and will be removed in a future update. Please use the correctly namedListBoxTabListRenderer
class instead
- The previous speculative fix didn't work correctly
- Speculative fix for a resize bug when applying a font during load
- Fixed a issue where mouse clicks may not be processed properly
- Designer now supports Dock in Parent Container and Undock in Parent Container commands
- Added new
Selecting
,Selected
,Deselecting
andDeselected
events, mirroring similar events in a standardTabControl
- Added overloads of
HitTest
andGetPageAt
that accept x- and y-coordinates - Added missing XML comments documentation
- Now uses semantic versioning
TabListPageCollection
now implementsIList<TabListPage>
TabList.HoverIndex
renamed toHotIndex
TabList.TabListBounds
renamed toTabListDisplayRectangle
GetItemAtPoint
renamed toGetPageAt
DefaultTabListPageRenderer
renamed toVisualStudio2012TabListRenderer
- Any type containing
TabListPageRenderer
has been renamed to beTabListRenderer
- Removed the explicit implementation of
ITabListPageRenderer
fromTabListPageRenderer
as it added nothing over the implicit - The
TabListPageCollection
andTabListControlCollection
classes are now sealed and without public constructors - Removed public
IsReadOnly
,IsFixedSize
,IsSynchronized
andSyncRoot
properties, these are now available only via explicit interface casting - Removed the
virtual
attribute from most properties - Some previously protected virtual methods have been made private
- Unused events now have no additional overhead
- Focus rectangles are now drawn using the Win32
DrawFocusRect
API rather than the utterly awful .NET implementation - Correct background wasn't painted when a
TabList
was hosted inside aTabControl
- Demonstration program is now a little more robust
- Added
this[string]
indexer to theTabPageList
collection - Added
RenderList
,GetStartingPosition
andGetPreferredSize
methods toITabListPageRenderer
to allow greater control over how headers are sized and positioned - Added new
ListBoxTabListPageRenderer
class. This renderer makes the tab list look like a list box. - Added new demonstration showing how to use different renderers to change the controls appearance
- Added
ContainsKey
andIndexOfKey
methods toTabPageCollection
.
- Added NuGet package
- Added a license file to hopefully cut down on questions about
usage. The
TabList
control is licensed under the MIT license, allowing you free reign to use it in your projects, commercial or otherwise. Seetablist-license.txt
for the full text.
- Tidied up the demo a touch
- Fixed the
HoverIndex
property always defaulting to zero.
- Added
ShowTabList
property. When set toFalse
, the list of tabs is no longer displayed, and navigation can only occur via code. - Added
AllowTabSelection
property. When set toFalse
, the control can no longer gain focus, mouse hover effects are not displayed, and navigation can only occur via code. This allows you to disable navigation whilst still having the tabs visible.
- Initial release