Free Controls on the Web
Copious Complimentary Controls Abound on the Internet — If You Know Where to Look
October 30, 2009
ControlFreak
LANGUAGES:ALL
ASP.NETVERSIONS: 1.0 | 1.1
Free Controls on the Web
Copious Complimentary Controls Abound on the Internet IfYou Know Where to Look
By Steve C. Orr
There are hundreds of high-quality third-party controlsout there that you can use to make development easier. Most of the best onescost a significant amount of money (although they often are worth it). However,there are some exceptions to the rule yes, there are fine controls available thatare completely free of charge.
Why are they free? The reasons vary. In many cases, thedevelopers are simply generous individuals. In other cases, a company may give awaysome controls for free to get you interested in other products they sell. Nomatter what the reasons are, you benefit. To that end, I ve compiled a list offree controls for your perusal and experimentation.
Menus & Navigation
A good menu/navigation system is something that every Website of significant size needs and yet, amazingly, there isn t any suchcontrol included with ASP.NET. Therefore, most Web developers feel forced tobuild their own, reinventing functionality that has already been builtcountless times before. You can take a more efficient approach by using one ofthe fine menu controls available on the Internet. Following is a sampling of afew of the free ones from which to choose.
skmMenu is a standard-looking open-source dropdown menuthat would generally be placed near the top of your page. You can configurecolors, fonts, and sub-menus via code or bind to an XML file that holds thisdata. It has thorough documentation online and off and plenty of codesamples.
Titanium Soft provides a free dropdown menu control, aswell. Although the documentation is not as thorough as skmMenu, the menusappear to be slightly more polished visually, so they might be worth the extraexperimentation. The source code is also available for free download, so youcan beef up the functionality in case it doesn t initially meet your needs.
http://www.titaniumsoft.net/tsweblib.aspx
Timothy Humphrey has been generous enough to provide afairly deluxe dropdown menu too, with detailed documentation and examplesavailable to help you get ramped up quickly. It s configurable via XML files,and is available free of charge through a standard GNU general public license. Healso provides some other interesting controls, such as a tab control and treecontrol.
http://timothy.humphrey.name/thwc/
Dommelen Slide Menu is a nice option if you want a menu onthe side of your Web site instead of the top. It makes efficient use of space,while providing a familiar and friendly user interface. The only downside isthe sparse documentation. There also is an interesting slide menu bar availablefor free.
http://At-Krays.Net/csharp.html
obout Inc. s Slide Menu presents a user interface similarto the Dommelen Slide Menu, and ups the ante by providing plenty of onlinedocumentation and intuitive sample code that demonstrates the various ways themenu can be customized. Although the free basic version appears to be quitefunctional, there is a Pro version available for purchase that provides extrafunctionality, such as binding to an XML file.
http://www.obout.com/sm3/basic.aspx
Figure 1: obout provides a richSlide Menu control free of charge that you can use to implement navigation foryour Web site.
Grid Controls
I don t mean to put down the standard ASP.NET DataGridcontrol it is, after all, light years ahead of any grid control that Webdevelopers had available to them in the past. However, there is room forimprovement. For starters, the standard DataGrid is very server-based,requiring postbacks to perform even the most basic functions. This makes theperformance a lot weaker than it could be if the functionality were moved tothe client side. Here are a couple of free grid controls that move sorting andpaging to the client side, where it (arguably) should be for optimalperformance in most situations.
The DataIslandGrid Control by Reflection IT is a superb exampleof what is available for developers. It serializes the data to XML and useslittle-known (IE 5+) DHTML functionality to bind on the client side. Advanced JavaScriptand CSS functions are also leveraged to make all the magic possible. The sourcecode is freely available, too, as well as thorough documentation so you can digin and fully understand how it all works.
http://www.reflectionit.nl/DataIsland.aspx
The XGrid control by Carlos Aguilar Mares is another fineexample of client-side grid functionality implemented as an Internet ExplorerBehavior. It supports XML islands, row selection, and reloading the gridcontent without having to reload the rest of the page. It s all handled automatically;you don t need to know anything about XML or client-side code. The source codeis freely available, and documentation and code samples are plentiful.
http://www.carlosag.net/Tools/XGrid
The SuperDataGrid by Superexperts shies away from theclient-side functionality that is so tightly bound to Internet Explorer, andmoves back toward the more widely compatible server-side functionality. Itextends the standard ASP.NET DataGrid control and adds built-in functionalityfor paging, sorting, editing, and caching so you don t have to dirty your handswith such matters. This quality control was created by Stephen Walther,renowned author of the highly recommended book ASP.NET Unleashed.
http://superexpert.com/default.aspx?id=427
Fancy Textboxes
I think it s fair to say that every Web site contains atleast one textbox. The HTML textbox has been a standard for a long time, and itdoes its job quite well. Its only flaw is that it is just so plain. It can tdisplay any fancy HTML formatting like people have come to expect from Windowsapplications. It provides no easy way for users to enter rich text, HTMLcontent, or to restrict the content that users can enter. There are textboxesout there that will do these things, and more and they are merely a downloadaway.
FreeTextBox by John Dyer is compatible with InternetExplorer and Mozilla browsers. The user interface is nearly identical toMicrosoft Word, so your users should find it to be quite familiar andintuitive. It s also nearly as functional as Microsoft Word, providing a trulyrich environment for users to enter nicely formatted documents.
Figure 2: FreeTextBox allows yourusers to enter richly formatted documentation and is ideal for contentmanagement systems.
htmlArea is another great WYSIWYG text editing controlavailable to allow users rich text entry. InteractiveTools.com has generouslyprovided this control free of charge under a simple BSD open-source license. Althoughthey don t provide support for the control, they do provide a free forum ontheir Web site that appears to be full of plenty of answers to commonquestions, as well as thorough online documentation. If you have the luxury ofdictating that your users have Internet Explorer 5.0 or above, then this is aneasy to use control that will likely be a valuable resource in your toolbox.
Rich Text Editor by Export Technologies is another fineexample of a rich textbox Web control that is compatible with InternetExplorer. The control, documentation, and sample code are available for free;however, the source code is not. There are several styles availableprogrammatically and declaratively that let you customize the look and feel ofthe control.
http://www.exporttechnologies.com/softwareDownloads.asp
Input Mask Control by Assisted Solutions is a greatsolution for limiting user input to certain types of values. From the user sperspective it works similarly to the classic VB6 masked edit control, so manyusers will find it to be quite familiar. Using Input Mask Control you can limitinput to phone numbers, Social Security Numbers, ZIP codes, dates, times, andeven a Canadian Social Insurance Number. Although the control is very simple touse, its functionality is also fairly limited. The masks are preset, so you can tenter your own customized masked formats, and the source code doesn t appear tobe available, so you can t add them manually either.
http://www.assistedsolutions.com/components/InputMask.aspx
15 Seconds provides VB.NET source code for a masked editcontrol that you can customize to your heart s content. The associated articleprovides all you need to know about the control and how to add your own masks.
http://www.15seconds.com/issue/030506.htm
FTP (File Transfer Protocol)
Alex Kwok has been gracious enough to provide a freecomponent for handling FTP transfers because the current implementation of.NET has a mysterious hole where this functionality should be. This FTP clientappears to have all the basic functionality you d expect, such as uploading anddownloading files, listing directories, and deleting and renaming files. Ahealthy dose of sample code is also available.
http://www.codeproject.com/dotnet/dotnetftp.asp
GotDotNet.com provides another great example of an FTPclient component. It allows you to upload, download, manage directories, andperform most other basic file operations. The VB.NET source code is freelyavailable and well written. Sample code for using the control is also includedin the download. An online forum lists many discussion topics about thecomponent in case you d like to learn more about the inner workings and how toextend it.
Polls & Voting
Everybody likes to have the freedom to express theiropinion. Online polls can be a fun reason for users to regularly return to yourWeb site. Online polls can also provide valuable feedback about the way yourusers think and feel. This information can then be used to mold your site intosomething they like even better. Creating a basic voting control isn t difficult,but creating a truly flexible and reusable control with a solid design takesmore time than most developers have available. So save your valuable time anduse one of these fine controls instead.
NetPolls from Votations.com is a flexible voting controlthat asks only that you register with their Web site. You can configure anunlimited number of questions in the form of radio buttons, checkboxes, and/ordropdown lists. It sports a fully customizable layout, and can be databasedriven. It s easy to get started with the control, and design time support issuperb. The n-tier architecture iscompletely documented online.
http://www.votations.com/netpolls/
Figure 3: Votation s NetPollscontrol is flexible, easy to use, database driven, and looks sharp.
Web wizard Scott Mitchell created a Content Rater controlthat will gather valuable feedback from users and faithfully store thisinformation in a SQL Server database. The free C# source code is explained indetail, so you can easily extend this user control in case its alreadyimpressive functionality isn t enough to satisfy your requirements. You mightstart by converting it to a custom control so it will be more easily reusableacross projects.
http://aspnet.4guysfromrolla.com/articles/042104-1.aspx
Figure 4: Scott Mitchell s ContentRater control can be a useful addition to nearly any kind of Web site.
Beloved MessageBox
Windows Forms programmers have it so easy. With a singleline of code they can pop up a dynamically configured message box any time theyfeel like it. As you likely know, such a simple feature isn t nearly so easyfor us Web developers. To achieve similar functionality, we ve got to deal withJavaScript, postbacks, and other related headaches. That is, unless you use oneof these free controls.
Saravana Kumar has provided a nice, basic custom Webcontrol that should take care of most MessageBox needs. You can display a basicalert message with an OK button, or you can display a confirmation message withOK and Cancel buttons. You can display the message when the form loads in thebrowser, or when the user hits the Submit button. You can also choose toexecute custom client-side scripts upon user confirmation.
http://www.microsoft.com/india/msdn/articles/119.aspx
Mono Software is generous enough to provide a free Dialogcomponent that claims to free you from the nightmare of ever-changing client-sidescripts and bad-looking dialog boxes. Judging by the industry standard-lookingdialog boxes that are far more flexible than anything you ll be able to displaywith basic JavaScript, the claim seems to be true. You can also displayInputBoxes, a long-time friend of classic VB developers. In addition, themessages can be set to automatically display upon various server-side events.
http://www.mono-software.com/DesktopDefault.aspx?tabid=244&tabindex=4
Figure 5: Mono Software s Dialogcomponent provides a way to display standard-looking dialog boxes that areflexible and easy to use.
Fancy Buttons & Image Generation
Image buttons can really add pizzazz to a Web site, butthe maintenance can be a real pain. Every time you add a new page you need newbuttons, and creating them can get time-consuming and tedious. Put an end tothis misery and keep the pizzazz by using one of the following controls.
Art Buttons from Progressive Consulting Technologies is anintriguing component that lets you dynamically create beautiful image buttonsof various colors and styles. The final output is quite attractive, althoughslightly inconsistent from my testing. Theme packs are available for freedownload to expand the button style choices. Even though the documentation issparse, there is some sample code with which you can play. I d say thiscomponent is worth taking a look at if you d like to save some time with yourimage-button generation.
http://artforms.progressivex.com/Downloads.htm
Gavin Joyce released an ImageLabel control that will takeany text and convert it to an attractive-looking image. You can control allkinds of properties, such as fonts, colors, sizes, borders, and shadows. Theresults look attractive and professional and are a fine addition to any Website. The control is free, and the source code for it is available for US$40. Anavailable online forum provides support.
http://www.gavinjoyce.com/components/imagelabel/
Once again, Web wizard Scott Mitchell comes through for usand provides another fine component that acts as a Rounded Corners Panelcontrol. You d think putting rounded corners on a box would be a relativelyeasy thing to accomplish in ASP.NET, but it wasn t until this Web controlcame along. The code to accomplish this is complex, but it is available to youfor free and it s explained well (with lots of code samples). There are quite afew options available for adjusting the look and feel of the panel, includingheaders, borders, colors and fonts.
http://aspnet.4guysfromrolla.com/articles/081104-1.aspx
Can t Be Done Software (now part of Aspose Software)has provided a dazzling library of Web Effects that you can add to your Web siteto give it real flair. Instead of a static, boring background, you can createanimated backgrounds that look more like screensavers than wallpaper. Additionally,you can create dazzling cursor animations, with stars and stripes circlingaround the mouse cursor, and other effects that are better seen than described.I encourage you to view the live demos on their Web site to see what I mtalking about.
http://www.cantbedone.com/Default.aspx?REDIR=frmWebEffects.aspx
Want to add a little Flash to your page? Well, Flashlightby NetBrick Inc. provides a quick and easy way to include Flash objects in yourWeb page, as well as any other component that uses the standard
http://www.netbrick.net/Web/Downloads/
Components that Defy Categorization
SharpZipLib is an open source project that enables you toimplement file compression functionality using several of the most standardformats. The C# source code is well written and the online forum provides lotsof Q&A.
http://www.icsharpcode.net/OpenSource/SharpZipLib/Default.aspx
.NET Communication Library is provided byComponentSpot.com to handle NNTP needs. Although Outlook Express is a goodenough newsreader for most folks, you can create your own usenet software withthis open source component. ComponentSpot.com also provides several othernetworking components that you ll be interested in browsing if you re into thatkind of thing.
http://www.componentspot.com/products/index.aspx?MasterCat=2
Written in pure C#, FreeSMTP is a component by Quiksoftfor creating and sending e-mails. Using this component you can send e-mailswith as little as one line of code. There are no dependencies (other than the.NET Framework, of course) and it provides functionality that the standardSystem.Web.Main class doesn t, such as progress monitoring, file logging, andHTML messages with alternate body text.
http://www.quiksoftcorp.com/freesmtp/
PdfCreator by Serdar Dirican is a component that allowsyou to visually export content to a PDF document. You can design the documentfrom within Visual Studio. The impressively complex C# source code is availablefor download, but you ll need to remember to import theSystem.Windows.Forms.dll to get it to work with ASP.NET Web applications.
ID3Util by Ambientware is an MP3 Tag Parser component thatallows you to extract track information from MP3 files. The open source VB.NETcode is a mere download away.
http://www.ambientware.com/components/ID3Util.aspx
Mega Sites
There are several Web sites out there that provide entirelibraries of Web controls for you to browse. Many of the controls are free, andmost of them at least provide free demos. When you ve got some time on yourhands, I suggest you dig into these fine Web sites and mine the gold that iscontained within.
In case you missed it, Microsoft released several free Webcontrols shortly after the release of ASP.NET. The download is quick and easy,and provides several controls that make fine additions to any Web developer stoolbox. Their TreeView control is one of my favorites, although there are alsonice implementations of a Toolbar, Tabstrip, and Multipage control. As you dexpect from Microsoft, the documentation is thorough, and there are plenty ofexamples.
You may have noticed that GotDotNet.com hosts several ofthe controls I ve listed in this article, and it has plenty more interestingcontrols and code samples that you may want to browse as well, such asComboBoxes, Barcode Generators, Report Writers, and much more.
http://www.gotdotnet.com/Community/UserSamples
CodeProject.com provides dozens of open source Webcontrols, such as Schedule Controls, Master Page solutions, Cookie Encryption,and more.
http://www.codeproject.com/index.asp?cat=4
SourceForge.net is the world s largest open sourcedevelopment Web site. It provides thousands of projects, although most of themaren t .NET, so you ll have to sift through to find the ones that suit you. Luckily,you can do searches and filters based on language. This site contains .NETprojects for RSS news aggregators, SMTP, Bar Graphs, Wiki, etc.
If you don t know about http://www.asp.netby now, it s time you learn. The Control Gallery lists hundreds of Webcontrols, including Charting Controls, Navigation Controls, Image Libraries,and much more. Even though not all the controls are free, this Web sitedefinitely deserves to be saved in your IE Favorites because of the sheervolume of useful information contained within.
http://www.asp.net/ControlGallery
MetaBuilders, headed by cohort Andy Smith, provides morethan two dozen completely free high-quality Web controls. There are controlsfor practically every need you ll ever come across, such as a Slide Menu, adeluxe ComboBox, a Scrolling Panel (which retains its scroll position betweenpostbacks), and an intriguing Master Pages system, just to name a few. The C#source code is freely available, as well, so you can learn from the master andbuild on his creations.
Carlos Aguilar Mares provides several nice free controlson his Web site, such as a client-side DataGrid (mentioned earlier), a WebChartcontrol for creating charts and graphs, and an ExcelWriter component forexporting content to Excel. There are several other controls you may finduseful, too; I recommend you take a look.
Excentrics World provides a dozen free Web controls thatwill likely come in handy at various points in your development, including (butnot limited to) a Masked Textbox, Numeric Textbox, and Calendar Popup. Althoughthe controls are free, the source code can be purchased for US$75.
http://www.eworldui.net/CustomControls/default.aspx
411ASP.net provides links to hundreds of ASP.NET controlsfor Charts, File Management, Content Management, Site Statistics, and oh somuch more. They aren t all free, but the variety is quite pleasing.
http://www.411asp.net/home/assembly
Support Freeware
I d like to formally thank the authors of every controldescribed in this article. I d also like to thank the authors of all other freecomponents for providing so much for us all. Many of the listed sites providelinks for donations, and I encourage you to give to them in much the same waythey ve given to us.
That said, the control authors listed in this article areunder no obligation to continue giving away their creations for free, and somemay have removed them or started charging for them before you read thisarticle. So enjoy them while you can, because great new controls appear anddisappear on the Web almost daily.
If you ve written any controls of your own that you d liketo share with the world, send them along and I ll see what I can do topublicize them and ensure they get put to good use by developers everywhere. Itcan be a good way to get your name in front of the public eye and enhance yourcareer opportunities.
Steve C. Orr is anMCSD and a Microsoft MVP in ASP.NET. He s been developing software solutionsfor leading companies in the Seattlearea for more than a decade. When he s not busy designing software systems orwriting about it, he can often be found loitering at local user groups andhabitually lurking in the ASP.NET newsgroup. Find out more about him at http://Steve.Orr.netor e-mail him at mailto:[email protected].
About the Author
You May Also Like