.NET Framework for Desktop
Episode Thirty Eight
Intro
I'm Peter and this is the RoguePlanetoid Podcast where you will find insights about Microsoft or related platforms and technology, along with so much more whether you are beginner or an experienced professional or just interested in technology. Keep Current, Keep Coding!
Welcome
Welcome to episode thirty-eight of the RoguePlanetoid Podcast about .NET Framework for Desktop. .NET Framework began a new era for desktop developers with Windows Forms joined later by the designer and developer partnership of Windows Presentation Foundation. .NET Framework was initially released in 2002, codenamed Next Generation Windows Services or NGWS, and ushered in a new era for developers for web and desktop by introducing the Common Language Runtime or CLR, which was a managed runtime supporting just-in-time compilation and garbage collection. .NET Framework also provided a Base Class Library or BCL supporting a variety of features, a brand-new programming language of C# along with VB.NET which was a modernised version of Visual Basic. You can learn more about Visual Basic in Episode Thirty Seven of the RoguePlanetoid Podcast or check out the link in the show notes.
Windows Forms
.NET Framework introduced Windows Forms, or WinForms which was the first managed user interface framework for Windows. WinForms wrapped the native Win32 APIs in a clean, object-oriented layer combined with a drag-and-drop designer in Visual Studio, which provided a true designer surface for creating applications visually with automatic event wiring. Windows Forms provided a consistent library of common controls such as buttons, labels, textboxes, menus or toolbars plus data bound controls, container controls and dialog boxes. Windows Forms supported user-drawn elements with GDI+ to create custom graphics or visualisations, user controls that could leverage existing components and third-party controls. Windows Forms made it possible to create a working desktop application in minutes that could leverage the capabilities provided by .NET Framework.
Windows Forms was my first experience of .NET when .NET Framework was released in 2002, when I created my first Visual Basic .NET examples for tutorials to help me and others learn of Hello World, followed by using the notification area or task tray along with drawing, text editing and a simple dice rolling game. I also created my own small applications much like I had done previously to help me learn more, and as .NET Framework evolved including in 2005 when it was possible to use Express Editions of development software for free, I updated my previous tutorials and added a lottery number picker and noughts and crosses game. Windows Forms using .NET Framework was not only something I used personally but also professionally including working on maintaining a complex desktop application.
Windows Forms although seen as a legacy technology is still supported in modern .NET, with new features being added such high-DPI support for modern displays and theming support for dark or light mode. Windows Forms is something I've used in modern .NET personally when creating examples to show off every single UI technology in .NET in my talk, Take a Note of UI with .NET, and professionally to create a self-contained custom installer for an application using another desktop technology. Windows Forms began with .NET Framework and remains part of modern .NET, and was my first experience of the .NET ecosystem, and it is great to think back on how it started my journey with .NET, which began with the tutorials you can see at cespage.com/vb or check out the link in the show notes.
Windows Presentation Foundation
.NET Framework introduced a new desktop technology in 2006 with Windows Presentation Foundation or WPF, developed under the codename of Avalon, which was a user interface framework for creating applications that employed XAML or Extensible Application Markup Language, an XML-based language like HTML to define and link various user interface elements. Windows Presentation Foundation enabled developers to separate the design from the logic of an application that could be combined with databinding to create rich user interfaces that could have a unique look-and-feel or fit in as needed using styles and templates. WPF featured vector-based rendering compared to the pixel-based rendering of Windows Forms with a layout system that adapts to DPI or window size. Windows Presentation Foundation enabled developers to create a user interface declaratively that separated design from logic to build user interfaces that were more flexible and fluid using the power of .NET Framework.
Windows Presentation Foundation was completely different from Windows Forms, and an opportunity to update my previous tutorials to help learn this new technology and take advantage the capabilities it provided, with more games like memory game and playing cards, plus more complex examples including a rich text editor, media player, on-screen keyboard and database. Windows Forms seemed like a natural progression from Visual Basic, but Windows Presentation Foundation felt like a completely different and more capable technology, designed with the future in mind. Windows Presentation Foundation was also not just a personal passion but a professional possibility, when I employed the rendering capabilities of the platform combined with web technologies to create a template-based image rendering platform, using professional designer driven elements combined with user customisation to provide content for in-venue and out of home signage.
Windows Presentation Foundation is also seen as a legacy technology, but is also supported in modern .NET with new features being added as well as the technology behind it inspiring other platforms in modern .NET such as WinUI with Windows App SDK and cross-platform with .NET MAUI. Windows Presentation Foundation is something I've used personally in modern .NET including my talk, Take a Note of UI with .NET, which showed of every UI technology in .NET, and professionally to create an application for loading calibration data for a diagnostic device that employed the custom installer developed using Windows Forms. Windows Presentation Foundation breathed new life into .NET Framework and provided the basis of the modern Windows desktop development I do to this day in modern .NET with my tutorials available at tutorialr.com or check out the link in the show notes.
Conclusion
Windows Forms was part of the introduction to .NET Framework, and remains part of modern .NET to this day, it enabled me to progress from Visual Basic to VB.NET by evolving my tutorials to help me learn and to help others to learn. Windows Forms is something that I've not only used personally but have also used professionally in .NET Framework and modern .NET, that helped me gain a greater understanding of the capabilities that I then applied to other areas of .NET Framework and modern .NET.
Windows Presentation Foundation evolved desktop development on .NET Framework, and not only remains part of modern .NET, but kick started the latest platforms of WinUI with Windows App SDK and cross platform with .NET MAUI. Windows Presentation Foundation was not only an interest personally but was able to leverage those skills professionally to create unique and innovative solutions that helped take advantage of the functionality and features of .NET.
Outro
Thanks for listening to the RoguePlanetoid Podcast where each episode you will find insights about Microsoft or related platforms and technology, along with so much more wherever you listen to your podcasts or at rogueplanetoid.com/podcasts for the RoguePlanetoid Podcast whether you are a beginner or an experienced professional or just interested in technology. Keep Current, Keep Coding!
- Website - rogueplanetoid.com/podcast
- X - x.com/rogueplanetoid
- YouTube - youtube.com/@rogueplanetoid
- RoguePlanetoid Podcast - Episode Thirty Seven - Visual Basic
- CESPage.com Visual Basic - cespage.com/vb
- Tutorialr.com - tutorialr.com
RoguePlanetoid Podcast is a production of cluarantonn.com
Hosted, Written, Produced and Edited by Peter Bull
Music based on Like a Tiger by Jo Wandrini
Production Company Name by Granny Robertson