A custom .NET WinForms Control, that provides a flat styled, feature rich and highly configurable, supporting both data-bound and unbound mode, multicolumn data display capable ComboBox Control
A quick peek into some features...
What is Binarymission Advanced Combobox Control?
This custom .NET Control (also known as BinaryComboBox .NET) is an easy replacement for the standard .NET Combobox control, providing a wealth of impressive features, including multicolumn data display mode, amongst many others.
why would i want to use it?
Just for the love of the tons of features this Control provides. Hands-down.
Please check-out some of the features detailed below.
Multicolumn combobox - supports both data-bound and unbound modes
The Control, by default, works in the standard (i.e. the typical single column drop-down) mode.
The Control optionally supports a multi-column drop down mode, if you set the appropriate options to do so.
All you will need to do is set the DropStyleIsMultiColumn property to true, and the Control will instantly support data display in multi-column drop-down list mode.
Multi-column drop-down list feature supports both ComboBox DropDown style as well as DropDownList style!
This feature allows you the choice of either selecting items directly from the multi-column drop-list or to type in directly to the combobox.
This comes handy when your users know what they are typing in and don’t have to necessarily use the multi-column drop-list (although they still can).
Advanced UI customisation
The Control supports extensive UI customisation such as setting custom colour for drawing the Control border, drop-down button section, the background colour for item selection when in dropped-down mode, etc.
You could also customise the rendering mode for drop-down button section of the control i.e. use from various modes available: Microsoft Visual Studio style, our date picker control style, or even ask the control to use your own custom image for the drop down button section completely.
Enhanced display styles supported
- Automatic support for a Drive List style
- Automatic support for a Font List style
- Rendering the Visual Studio Flat style
- Rendering the standard Windows style combobox mode
- Ability to fully support Control painting with custom colours (with Alpha-blending support)
- Mouse hovering effects
- Automatic support for emulating Windows theme rendering
- Automatic identification of the Operating system
Advanced text alignment customisation
The Control supports different text alignment options viz.,
The text alignment is customisation for the Control item text as well as the drop-down items text.
The text alignment can be mix-and-matched – i.e. you could pick one text alignment for the control text and a completely another text alignment for the drop-down item text.
Image Combobox readily available for use
While in the image combobox mode, you can show images next to the items on the drop down list, in both normal and selected states of the control.
Users can specify size of the image to be drawn in the image combobox mode. With this in place, you are now relieved from the tedious pain of overriding various custom draw routines of ComboBox control.
Image combobox with rectangle around the image
The Control has the ability to draw a rectangle around the image.
With a simple property setting, this rectangle drawing can be switched off.
Data exporting / reporting features built-in
The Control while in its multi-column mode, can let the users to export/save the view data into a CSV output file.
This feature can also be enabled / disabled, by simply setting a property setting.
This option can be enabled both using the UI controls, as well as through a context menu.
The Control displays a pretty-looking drop-down window, displaying message to the user, to let them know that the control does not have any data to display at that point in time, when the user clicks on the drop-down button.
This can typically happen when the control is not bound to a data source, or there is no data in the attached data-source to display, at the moment.
This feature comes in handy to make your UI and your user’s UX enjoyable! Rather than to display an empty window to indicate there is no data to display, a pretty-looking window displaying a no-data-available message, makes the UX enjoyable.
The message text is configurable by the developer, via a property setting on the control.
Powerful Design Time Support
The Control comes with strong design-time support. For enabling easy setup of all crucial and important properties, the control implements custom code to support displaying these properties via the design-time smart tags UI – i.e. the designer actions list pop-up.
The list includes properties, for example, for you to easily complex bind the control to an IBindingList datasource
With this design time infrastructure in place, you will not need to write a single line of code to get the controls working for you.
Multi-column mode without header and footer
The Control’s multi-column drop-down list can also be configured to be displayed without the header and footer area, if you so desire.
Data grouping based on columns
The Control provides out-of-the-box support for grouping of data, while it is set up to run in multi-column data display mode.
Via simple-to-use properties, you can set-up grouping-based multi-column data display, by specifying which column to group the data by, and the control will group the data based on that column and display the multi-column data view.
By using the features of DataView object, you can filter your source data and assign the filtered data as the data source to the control and thereby be able to view just the filtered data, in the control’s multi-column data display view.
This feature, of course, is also available in the control’s standard (single-column) data display mode.
Combobox text Auto-Completion
The Control automatically selects the best match of an item from the list, as you type in a text, saving time selecting items from a possible long drop-down list.
Also, the Control exposes a property (i.e. AutoCompleteIsCaseSensitive, a boolean property), to let the user decide whether the Auto-Completion feature will be case-sensitive or not.
A performance efficient routine has been added to support handling faster Auto-completion, especially to cope-up with high-speed data entry users.
Auto-Completion feature is available on Data-bound mode as well
The Control supports auto-completion of text in data-bound mode mode as well, where it will be able to retrieve any closely matching data items from the attached data-source, while you type-in text into ComboBox Control.
Customisation of multi-column auto-completion
When the auto-completion is enabled, the Control will display the “auto-completion suggestion list” drop-down list with multi-columns of data (i.e. all columns data from the data source) rather than the default behaviour of displaying the auto-completion suggestion list with only one column of data that is relevant to the values in the DisplayMember column.
With this feature, when the user types-in characters into the text area of the combobox, the auto-completion “suggestion list” will display the list with all columns of data as is closely relevant to the text characters so far typed-in by the user.
Also, the Control will ensure that it continues to display the auto-completion multi-column drop-list window and at the same time keep the input focus on the combobox text area, so that the user can continue to input more text (or update it) and the drop-list can show the applicable items in its view as is relevant based on what the user has typed in so far.
Read-only feature supported
The Control supports a property called ComboBoxIsReadOnly , which when set to true, can set the Edit control portion of the ComboBox Control to read-only mode!
This feature lets your users to perform clipboard operations on the ComboBox text, while at the same time, blocking them from editing the combobox text.
Many more features...
The Control comes packed with many more features, including…