Web ComboBox V3 is the most recent release of an AJAX-based lookup control for classic ASP, PHP, JSP, and of course ASP.NET. Developed by eBusiness Applications, this control represents the commercialization of some popular new AJAX functionality seen lately on the web (for example, in Google Suggest and Gmail). Web ComboBox does it all, and does it well.
Feature highlights of the product include:
AJAX - Asynchronous JavaScript and XML
For those who are unfamiliar with the concept, the term AJAX was coined by Adaptive Path, and merely refers to the use of JavaScript (ECMAScript) and a combination of XML and DHTML to deliver more powerful user interfaces in a web browser. While the ability for component vendors to use AJAX techniques has existed for years, only recently has the development community begun to lay out standards and best practices for its use.
Ideally, an AJAX-based component will have the following workflow:
Web ComboBox seems to take advantage of all the browser has to offer, with virtually flawless presentation across browser platforms.
What's so special about version 3 of Web ComboBox? As mentioned previously, there are six search modes. It's doubtful you would ever need them all, and would probably stick to one or two for consistency, but here is where this control really shines. If you have ever looked at the Gmail lookup functionality or the Google Suggest tool and drooled, now you can build the same tools into your own applications--all with a single control.
Search Modes
The API
No AJAX control is complete without a thorough client-side interface. ASP.NET developers who are uncomfortable delving into the JavaScript arena are spared the hassle. Server-side access to the data search and OnSelect events allow almost complete control over functionality. However, to take advantage of some of the more advanced functionality, some JavaScript is required.
Access is provided to over 10 events, including onAfterInitialize, onShow, onHide, onBeforeSearch, onAfterSearch, onBeforeSelect, onAfterSelect, onEditKeyUp, onFocus, onBlur, and onTab.
In addition, developers can work directly with the list data, adding records, clearing the list, and even binding two comboboxes together for master-detail relationships.
Figure 6 -Comboboxes Linked through JavaScript
For some, JavaScript is a kind of black art, and it would be nice to see some of this wrapped up a little more nicely for the average developer, but at least tutorials are available for many common uses.
Installation
The 30-day fully-functional trial of the control is available from the EBA website. A full name and email address are required to receive a download link, which is then immediately available. Download options include special versions for ASP.NET, Classic ASP, PHP, and JSP.
The installation procedure is quick and doesn't require special keys or other additional information. The software is available from the Windows Start menu, under the eBusiness Applications folder, and includes several sample projects.
ASP.NET Interface
Creating a basic ComboBox is straightforward.
One of the nice things about the ASP.NET version of Web ComboBox is its ability to bind to all sorts of data types, including DataSet, DataTable, DataView, IDictionary, IDataReader, and IEnumerable (e.g., Array and ArrayList) objects--just about anything that derives from IListSource. Also, EBA provides recommended SQL statement templates for popular databases including MySQL, SQL Server, Oracle, DB2, and Access.
The Designer
While many developers prefer code view, the designer included with Web ComboBox is a handy tool that reveals many configurable properties. In addition to the standard databinding properties, there are many properties associated with each element, such as width and height for the textbox (especially useful for SmartList), font colors, and highlight colors.
Some key properties and their meanings:
Room for Improvement
At the time this article was written, version 3 of Web ComboBox was still in Beta 2. There were several issues being tracked in the vendor's forums. In addition, some of the samples seemed partially complete, and some documentation had yet to be filled out (for example, details about the control Designer were absent). As this product is still in Beta, the bulk of these issues will likely be resolved by the time the component is officially released. Either way, the core component seems generally robust enough for deployment as-is.
General Feelings
This control is the one-stop solution for any lookup functionality required in a web application. There is no question that it sits at the top of the pack in terms of functionality and in terms of features. While there are other controls available that provide some of the same capabilities, I haven't seen one that goes the extra mile in terms of integration with the .NET DataGrid, user controls, and other business layer components of ASP.NET, and is as technologically innovative on the client-side.
It's my opinion that this component will likely move into the top position for AJAX-based lookup controls for years to come. At a price point of roughly $200, it may be out of the reach of independent developers, but a powerful addition to a professional web developer's toolbox.
Web ComboBox V3eBusiness Applicationshttp://developer.ebusiness-apps.com