Professional Winform Controls & Libraries

Yes, yes, I know what you’re thinking. Winforms development! But… Erm… Isn’t Winforms dead?

I wouldn’t say Winforms is dead - let’s just say it’s “been done”! It’s complete. Whilst the Winforms framework is not as hot or current as it once was, it’s still very capable for a lot of business tasks and needs. And it’s still my go-to choice for developing in-house “line of business apps” that have no need to be online.

The fact of the matter is, there are some apps which don’t need to be put on a mobile phone or be accessible from the web. The desktop isn’t going away anytime soon and traditional desktop applications still have their place. These line of business apps can be considered as "dark matter" apps which keeps the cogs of businesses turning. The majority of people will never see them but they are out there being used daily.

Good software solves business problems no matter what form it comes in. As developers, we should always be looking for the minimum viable product. What’s the least amount of code we need to write to get the job done to solve the business needs? The majority of time a simple traditional desktop application will do the trick.

As an aside, I also make use of ClickOnce which gives you all the deployment benefits of a Web App inside a company. You publish an update and the next time your users load the app they are on the latest code.

But just because Winforms is old technology doesn’t mean the applications can’t be fancy-pants-looking! Because this area is so well-trodden there is a rich ecosystem of free controls out there which you can use to spice up your app. These apps don’t have to be boring battleship grey! You’re not stuck with the controls you get by default in Visual Studio.

With that said, here’s a rundown of some controls I have used or come across which add shine to any app:

Krypton .NET WinForms controls

"The Krypton Suite of .NET WinForms controls are now freely available for use in personal or commercial projects." That’s a quote straight from the GitHub pages of ComponentFactory.

This is a great library and includes a ribbon control, docking controls, an enhanced tab control (which they call a navigator). This is definitely one to check out!

Check it out here: https://github.com/ComponentFactory/Krypton

Syncfusion .NET WinForms controls

Syncfusion now has a community license and is available to all!

“The community license is our way of giving back to the community,” says Daniel Jebaraj, vice president of Syncfusion. “We want to support the individual and small business developer by offering our tremendous capabilities at no cost, and with no expiration date. What we offer is not a subset of Essential Studio but the real deal.

Customers using the community license will receive the exact same bits that we ship to our other customers. What is more exciting is that we offer free technical support to every customer licensed under the community license!”

Syncfusion has a whole slew of controls but of interest to me is their Data Grid and Spreadsheets controls with their excel like UI.

Check it out here: https://www.syncfusion.com/products/communitylicense

HTML Renderer

This is a fantastic little HTML framework. It’s a lightweight HTML Rendering library which means you can embed any HTML UI elements in any control you want and expand them beyond their original implementation. For example, I have previously used this to embed HTML in a DataGridView Cell.

Check it out here: https://github.com/ArthurHub/HTML-Renderer


Advanced DataGridView

I use this control all the time. It provides excel like filtering over multiple columns.

Check it out here: https://github.com/davidegironi/advanceddatagridview

ObjectListView

This is a flexible replacement for the built in ListView control. It’s feature rich and has animations, filtering, drag-drop, and even a tree list version.

Check it out here: http://objectlistview.sourceforge.net/cs/index.html

Microsoft Chart Controls

Need to display a chart? Microsoft's own chart controls have a large selection to choose from with great documentation

Check it out here: https://www.microsoft.com/en-gb/download/details.aspx?id=14422

CefSharp - That’s Chrome all up in your Winforms!

CefSharp enables you to bundle the open source Chromium web browser in your application, with the added ability to execute code in JavaScript land from C# and vice-versa. This tool is powerful!

Check it out here: https://github.com/cefsharp/CefSharp

Excel EPPlus

If you’re writing a line of business app, sooner or later you’re going to come into contact with Excel. This library is your friend. It’s quite simply awesome. It allows you to generate advanced excel spreadsheets from a C# application.

Check it out here: http://epplus.codeplex.com/

Conclusion

There you have it. While Winforms might no longer be classed as one of the cool kids, you can still be very productive in it and these frameworks imbue you with the power to create good looking applications.


Comments

Popular posts from this blog

SeriLog & Application Diagnostic Logging

OxyPlot Charting Control

Android, Self-Signed Certificates and OkHttp