Skip Navigation LinksHome > SSW Standards > Developer General > The Best Tools for Web Forms Development (ASP.NET Controls)

This page is to look at individual components. Be aware that many companies offer their tools in a bundle - here are the best options if you are going to just choose one company:
#1 http://www.componentart.com/webui.aspx
#2 http://www.telerik.com/asp-net-controls/ui-components/overview.aspx
#3 http://www.richercomponents.com/products.aspx
#4 http://www.infragistics.com/products/NetAdvantage/WebForms/default.aspx

Do you agree with them all? Are we missing some? Let us know what you think.

would you like your software to be considered for this list? Give us your details.

What do you think of the ASP.NET controls sold by Telerik? I like the range of controls these guys offer in their full package (eg. drop-down list, editor, spell, etc), plus the fact that they seem very strong on Ajax implementation. Do you think the ComponentArt controls are superior?

The short answer is yes - mainly because I like the grid the most. However the Telerik controls are good also - they come first for the rich text editor and the speller. So it depends.

  1. ComponentArt DataGrid

    Multi-mode operation, support for AJAX callbacks, and client side template feature provide the richest, highest-performing user experience delivered to date by an ASP.NET Grid control.

    Figure: ComponentArt DataGrid Screenshot

    ComponentArt DataGrid Overview Leaving SSW Web Site

    Suggestion to other vendors.

    You should all make similar grid examples so others can compare.

    I really like this grid example http://www.componentart.com/demos/grid/features/ajax_grid/WebForm1.aspx And this one http://samples.infragistics.com/2006.2/WebTabs/CustomerViewer/WebForm1.aspx

    Telerik only have this http://www.telerik.com/demos/aspnet/controls/examples/integration/ajax/grid/defaultcs.aspx

  2. ComponentArt Menu

    ComponentArt's award-winning Menu has been written from the ground up for ASP.NET, combining the best practices from our original ASP.NET Menu with our advanced new rendering technology.

    Figure: ComponentArt Menu Screenshot

    ComponentArt Menu Overview Leaving SSW Web Site

  3. Tree View

    ComponentArt TreeView

    Enhanced performance and added features are now available! Lightweight and lightning-fast, TreeView is rich on both the client and server side, easily data-bound and ready for ASP.NET 2.0.

    Figure: ComponentArt TreeView Screenshot
    ComponentArt TreeView Overview Leaving SSW Web Site


    VisualASP TreeView Component

    Use this classic component to add tree structure menus to your asp applications. With eight tree styles the functionality in this component gives you all the power you need, to create an impressive looking tree to suit your web site. The TreeView Component includes examples for database, xml and client side event handling, plus many others.

    Figure: VisualASP™ TreeView Component Screenshot
    Visual ASP Web Site Leaving SSW Web Site

  4. Rich Text Box

    #1 r.a.d.editor (will be called RichTextBox)

    This rich text box from r.a.d is great.

    Unfortunately it is poorly named (they will rename it to RichTextBox) and does not come up on the first few pages of google ! http://www.google.com.au/search?sourceid=navclient&ie=UTF-8&rls=GGLJ,GGLJ:2006-17,GGLJ:en&q=rich+text+box+asp%2enet

    Why do I say the RichTextBox from Telerik is the best one - because when you paste from Word it cleans up the god awful HTML

    See http://www.telerik.com/r.a.d.controls/Editor/Examples/Default/DefaultCS.aspx

    Figure: r.a.d.editor Screenshot
    Telerik Web Site Leaving SSW Web Site

    #2 RichTextBox

    A common question is why do I recommend RichTextBox over the free ones?

    I have heaps of good reasons:
    • It is a product - RichTextBox provides a professional, supported, commercial product, not just a piece of code
    • They will be growing with me and my app - They will be here in X yrs time, selling solid, high quality components
    • I get help - They provide really great email support, support in the forums, a large knowledge base, and have a technical support team devoted to supporting users of the product
    • They will fix bugs for me - They invest heavily in research and development, and provide free products upgrades and bug fixes
    • The big companies will be subsidising me to get the above - They have a top-notch customer base including Microsoft, Intel and Wells Fargo, which says a lot about the trust their product has gained

    There is certainly a place for small bits of code like FreeTextBox, but I don't think free, unsupported code is suitable for most corporate applications. And anyway, for a high quality web app, $150-250 isn't a large investment by any means. Certainly when compared to the effort required to build one of these editors, it's insignificant.

    Adam Cogan

    Now this is a great control and comes with even better support. RichTextBox is a server control that you add to an ASP.NET page. You can set a few properties if you like and there is nothing more to it - it works like any other control. Under the covers, when the page is requested by the browser, it generates several hundred lines of HTML and JavaScript in a configuration that depends on and properties you set for the control. To provide the editing functionality it relies on editable IFRAME functionality in Internet Explorer and provides a large amount of code to support that, and it does a great job in bringing such richness to the browser.

    Figure: RichTextBox Screenshots
    RichTextBox.Com Leaving SSW Web Site

    #3 FCKeditor

    FCKeditor is a powerful tool providing a text editor for web pages. The interface is similar to the ones we know from Microsoft products and has an easily customizable toolbar. The text editor provides all the formatting possibilities which are possible in HTML through an online interface. As FCKeditor is an OpenSource project, it is absolutely free.

    One disadvantage is that FCK has problems over a SSL connection.

    FCKeditor

    Figure: FCKeditor Screenshot
    www.fredck.com/FCKeditor Leaving SSW Web Site

    #4 FreeTextBox (preferred)

    A free ASP.NET control written in C# implementing MSHTML in Internet Explorer. It can be validated using standard ASP.NET validators and has many options for customization..

    FreeTextBox has a 'free' version and a paid version which offers things like XHTML compliance. Also DNN uses FreeTextBox as their default editor.

    If you have multiple rich text editors on one page then IE uses a large amount of memory - this causes problems on older machines with 256mb of memory and integrated video cards.

  5. Collapsable Panel - from EWorldUI

    The collapsable panel control from EWorldUI (www.eworldui.netLeaving SSW Web Site) is a great, lightweight, free to use ASP.NET server control that enables you to expand and collapse blocks of content client side. You get control over the numerous sections of the title row as well as the javascript source file - embedded or linked.

    Collapsed Panel

    Figure: The content panel collapses to only show the title row which is clickable.

    Expanded Panel

    Figure: Once clicked, the panel expands to show the content without a postback.

  6. Popup Calendars

    ASP.NET comes with a built in Calendar Control that you can put on your web pages. I don't like the Calendar Control from a usability perspective - I think it is better to be able to type in the date in a text box. For the users that want a GUI calendar, they can click a button next to the date field. eg. www.qantas.com Leaving SSW Web Site Love to know if you Agree/Disagree?

    So in my search for a good calendar that can be used as a popup, I found these ones...

    Dynarch DHTML/Javascript Calendar (Free) (Warning: This doesnt work on IE7 so this is no longer recommended)


    In my opinion this is the coolest cross-browser compatible DHTML date picker. It is setup in minutes, with all the features you may require in 90% of your projects. Try dragging it around the page...

    Dynarch pop up calendar
    Figure: Dynarch Popup Calendar

    Dynarch Calendar Overview Leaving SSW Web Site

    What is it?

    • Cross-browser popup or flat DHTML calendar
    • Suitable for selecting date/time
    Features
    • The look is customizable through external CSS
    • High quality color themes
    • Keyboard navigation
    • Can show days from adjacent months
    • Can show week numbers
    • Translated into many languages
    • Any day can be "the first day of week"
    • The default "first day of week" can be configured in the language file
    • One can easily jump back or forward with 24 years
    • Provides help hints (also configurable)
    • Includes an optional time selector with 1 minute resolution
    • Special days (configurable list of days that are displayed differently)
    • Allows multiple days selection
    • Fast and very easy to setup

    ComponentArt Popup Calendar (ASP.NET)


    ComponentArt Calendar supports a variety of date and date-range selection types - without requiring postbacks for month paging or date selections.

    Figure: ComponentArt Popup Calendar

    ComponentArt Calendar Demo Leaving SSW Web Site

    Peter Blum's DateTextbox (ASP.NET) (Recommended when you have a range eg. Date Start and Date End)


    The DateTextBox Control is a complete solution to date entry in a web form. It is a greatly extended TextBox which assists the user in entering the day, month, and year of a date. It always follows the international short date pattern that you supply. Users can popup a calendar to select a date from that interface or use an assortment of commands available as single keystroke, from a context menu, or from a Help button. Two can be connected together for smart date range entry.

    Figure: Peter Blum's DateTextbox with popup calendar

    Peter Blum's DateTextbox Demo Leaving SSW Web Site

    RJS Popup Calendar (Free) (Recommended)

    The RJS popup calendar is free ASP.NET popup calendar baseed on the Fuushikaden JavaScript calendar. It can be fully customizable with CSS, has full globalization and cross-browser support and is very easy to implement. It is available on GotDotNet and is regularly updated by the developer Ricaute Jimenez Sanchez. Documentation is available in English and Spanish.

    Calendar
    Figure: RJS Popup Calendar

    Real demo:

    RJS PopCalendar Leaving SSW Web Site
  7. DB Combo

    DbCombo is an ASP.NET server component for picking from long lists of data. It uses client scripting to 'auto-complete' a text box while you type - just like a combo box. On lower browsers, it gracefully degrades to use HTML 3.2 for optimum compatibility. Functionality is not lost as this happens though, DbCombo uses the postback architecture to achieve the same result.

    DB Combo

    Figure: DB Combo

    Cambro DB Combo Leaving SSW Web Site

    Second best is Teleriks combo box

    http://www.telerik.com/r.a.d.controls/Combobox/Examples/Functionality/WhatsNew/DefaultCS.aspx

    Richer Components is the 3rd best - functional, but a little ugly

    http://www.richercomponents.com/asp-net-components/rich-live-combo/Demos/Dictionary.html

  8. Ajax Textbox

    As you type a word in the textbox, a JavaScript event fires an HTTP GET request to the ASPX page. The response from the ASPX page is simply displayed in a div tag under the textbox. The page is not refreshed/reloaded for every keystroke as everything is done by the JavaScript in the page. The main JavaScript object that allows us to do this is XMLHttpRequest. You could read about it from Apple's developer site here. This is supported by IE 5.0 +, Mozilla 1.0 + and Apple's own Safari 1.2 +.. It uses the XMLHttpRequest object to make requests and get back data.

    objectgraph

    Figure: objectgraph dictionary textbox

    Real Demo - Search Suburb:



    objectgraph Leaving SSW Web Site

  9. True Combo Behaviour

    It is quite common to write HTML code that will create a combo box on your web page. Users can then make a selection from multiple items within the combo. However, you may want to produce a combo that also allows the user to enter in custom text, as an alternative.

    Although this functionality is normally implemented in Windows by default, you will need additional code to make it work on a web page.A good explanation of how to do this can be found at the URL below:

  10. Toggle Borders

    The accepted way to debug complex table-based HTML pages is to add a border="1" attribute to the <TABLE> element. Toggle Borders is a utility which automates this and more. It is accessed from the context menu in Internet Explorer and will colour-code tables, span tags and div tags for you to see how your website, or a third party website has been laid out. Select Toggle Borders again and the colour-coding is removed.

    More information is available on the official website:

  11. Peter's Polling Package

    Polling is one of the most common ways to get the user to interact with your site. Often sites will offer polling simply to have something to draw users back to the site. A Poll is a fairly complex combination of HTML and server side code. It has two entirely different looks: its entry view and results view. It uses a database which demands web forms to allow the user to edit the polling data and extract data collected from the users. This Polling package includes all of the pieces.

    I use peterblum.com for this.

  12. Spell checker

    Expanded Panel

    Figure: Telerik has a good spell checker for ASP.NET

    Expanded Panel

    Figure: Infragistic has a spell checker for ASP.NET - but it is not so good

  13. Firebug

    Firebug integrates with Firefox to put a wealth of web development tools at your fingertips while you browse. You can edit, debug, and monitor CSS, HTML, and JavaScript live in any web page.

    It is easy to retrieve the html source, CSS and script for anywhere you want:

    Figure: When you hover over the red box, it indicates where it is in the browser (see green box).

  14. Internet Explorer Developers toolbar

    For lovers of Firebugs there is a Microsoft Internet Explorer Equivalent. The Internet Explorer Developers toolbar has a neat DOM explorer which is nearly as good as Firebug. (I'm sure some of you are aware of this product but I thought I would put up a tip anyway as I wsan't using this until today.)

    Latest version can be downloaded from MSIE Dev toolbar

    Expanded Panel

  15. JQuery

    Javascript has always been a nightmare to work with but JQuery makes working with javascript really easy.

    JQuery has these features:

    • CSS Selectors for finding DOM elements
      • Traditionally you had to iterate through a list of controls or use getElementById to get at an element you want
      • With JQuery you can address it the same way you do with CSS e.g. $("div.myClass") will find a div with the class "myClass"
    • Rich support for animations like the AJAX Toolkit does
    • Demo:





    • Easily manipulate DOM objects' attributes and css styles
    • Good event handling
      • var mylink = document.getElementById("mylink");
        function myfunction(){
            alert('clicked me!');
        };

        mylink.onclick = myfunction;

        Figure: Bad Example - Normal Javascript event handler

        On the surface, it seems that your Javascript works fine - what one naively fails to realize is that you've killed all other Javascript hooks on that object - they are no longer run.

        function myfunction(){
            alert('clicked me!');
        };

        $('#mylink').click(myfunction);

        Figure: Good Example with JQuery event handler
    • Support for WCF REST web services
  16. Acknowledgements

    Adam Cogan