Forms, WPF and UI Go Open Source
Written by Mike James   
Wednesday, 05 December 2018

.NET used to be one of the biggest things in town and then Microsoft decided to go in other directions with WinRT. Part of the .NET system was WPF, arguably the most advanced GUI framework ever. Now the unbelievable has happened - it has been open sourced along with Windows Forms and Windows UX.

Microsoft's "everything including the kitchen sink" approach to development environments may please some, but it leaves many without leadership or vision. .NET was a revolution and it was attractive to work with. Then it was sidelined by WinRT and then rebuilt from the ground up as an open source project. It became cross platform which was good, but without a cross platform UI, not so good. It didn't even have support for a Windows UI so it wasn't particularly useful to many Windows programmers who wanted to do more than write command-line programs.

Earlier in the year, at Build, it was announced that .NET Core would be getting some desktop packs - Win Forms. WPF etc - so that you could use .NET Core to create apps with a GUI.

netcore3

 

The downside is that as these packs are not cross-platform the programs you write will only run under Windows - so we have almost got back to where we started from after doing a lot of work.

The good news is that we now have a lot more than we started with. It has been announced that Win Forms, WFP and Win UX are all going open source. There are GitHub projects for each, but so far not all of the code for each is available. It is important to realize that Win Forms depends on other Windows-specific libraries such as GDI+ and WPF depends on DirectX. The chances of taking these cross-platform are low - DirectX, for example, is huge and unlikely to be open-sourced.

What is more the contributors guidelines say:

"We will typically not accept contributions that implement support for an OS-specific technology on another operating system. For example, we do not intend to create an implementation of the Windows registry for Linux or an implementation of the macOS keychain for Windows. We also do not intend to accept contributions that provide cross-platform implementations for Windows Forms or WPF."

To be clear Microsoft is saying that you can fork WinForms or WPF, they are both MIT licensed, and try and build a cross platform system if you want to but its not going to be part of the official repro.

So in all likelihood Windows is going to stay Windows and not leak to Linux or some other operating system. It also means that if you contribute to the project you are doing great good for Microsoft which they get for free.

The good news is that WPF is still alive and kicking and if it dies then we have only our selves, it users, to blame.

More Information

Announcing .NET Core 3 Preview 1 and Open Sourcing Windows Desktop Frameworks

Related Articles

.NET Core 3 Gets A GUI

Microsoft Asks For Help On The Future Of .NET - Where Do We Start?

Blazor .NET In The Browser

Silverlight Bridge To UWP Apps       

Not Dumping .NET - Microsoft's Method    

Dumping .NET - Microsoft's Madness   

Microsoft Open Sources .NET?       

Was .NET all a mistake?

The War At Microsoft - Managed v Unmanaged

Windows and .NET - the coming storm

WPF Lives!

Microsoft v The Developers       

To be informed about new articles on I Programmer, sign up for our weekly newsletter, subscribe to the RSS feed and follow us on Twitter, Facebook or Linkedin.

 

Banner


Crazy Clocks
10/03/2024

It's that time again when the clocks change and  time is of the essence and I indulge my interest in crazy clocks. I am always surprised that there are still new ideas for how to display the time [ ... ]



Pi Day - The Great Unanswered Questions
14/03/2024

It's Pi day again, again, again... Even after so many, I still have things to say about this most intriguing number. The most important things about Pi is that it is irrational and one of the few tran [ ... ]


More News

raspberry pi books

 

Comments




or email your comment to: comments@i-programmer.info

Last Updated ( Wednesday, 05 December 2018 )