A week ago I posted a short article describing the process of fixing a SplitButton control. The control was based on this control by a former MS employee.
My SplitButton fixes many of the bugs in her implementation, but owes to her stable base.
Comments, suggestions, and bug-fixes are welcome.
Update July 21, 2007: v1.4 is out, which fixes a null exception if the SplitMenu isn't set. In this version, if you don't set the SplitMenu property, the SplitButton will act like a regular button.
Update July 28, 2007: v1.5 is out. This fixes the small bug of the focus rectangle (i.e. the dotted line) being shown in all cases of focus, when it's only supposed to be shown when the button receives focus from the keyboard.
Update February 8, 2008: v1.6 is out. I've added support for image display and both image and text alignment. There are also many small fixes.
Update May 16, 2008: v2.0 is out. The SplitButton now works with 'ContextMenu' controls in addition to the existing support for 'ContextMenuStrip' controls. This was added so you can use the newly released VistaMenu with the Split Button.
More information, the latest changes, and the 'How-to-use' info.
Download the SplitButton now. It works with all .NET 2.0 and above languages (C#, VB.NET, etc.)