Microsoft Open Sources WPF, WinForms, and WinUI

Yes, WPF has been around for a while

As part of today’s Connect(); virtual event for developers, Microsoft announced that it will open source its Windows Presentation Foundation, Windows Forms, and Windows UI XAML Library technologies.

This is an interesting development. But I don’t believe it will result in these technologies making their way to other platforms. Instead, it appears that Microsoft is offering a mea culpa, of sorts, for ignoring WPF and WinForms, in particular, and trying to force developers to move to more recent and Windows 10-specific efforts like the Universal Windows Platform (UWP).

“Developers can now participate with Microsoft’s client UX technology in a much more interactive way,” Microsoft explained to me before the event. “They’ll be able to contribute a new feature back to the framework, debug and fix issues that impact their apps, build a private copy of the UI stack, as well as report bugs and other issues.”

Windows Intelligence In Your Inbox

Sign up for our new free newsletter to get three time-saving tips each Friday — and get free copies of Paul Thurrott's Windows 11 and Windows 10 Field Guides (normally $9.99) as a special welcome gift!

"*" indicates required fields

This field is for validation purposes and should be left unchanged.

As part of this effort, Microsoft will move the development of Windows Presentation Foundation, Windows Forms, and Windows UI XAML Library to GitHub as well. This, it says, will “provide a greater degree of transparency between the product team and the community, help democratize Windows development, and encourage more developers to build for Windows.”

Windows Forms and the Windows UI XAML Library will be open sourced today, on December 4, 2018. Windows Presentation Foundation will take a bit longer: Microsoft says it will open source some WPF components immediately and will then work to bring the rest of it over in “the following months.”

In related news, the .NET Core 3.0 Preview was also announced and made available today, and this will support building client apps using WPF, Windows Forms, and XAML Islands. Though .NET Core is cross-platform, these features will only work on Windows, of course.

 

Share post

Please check our Community Guidelines before commenting

Conversation 22 comments

  • curtisspendlove

    04 December, 2018 - 12:31 pm

    <p>The most interesting part to me is .NET Standard on Mono. </p><p><br></p><p>As Scott Hanselman says:</p><p><br></p><p><span style="background-color: rgb(0, 0, 0); color: rgb(222, 222, 222);">Think about the .NET Standard and how you can run standard libraries on .NET Framework, .NET Core, and Mono – or any ".NET" that's out there. Mono is enabling running .NET Standard libraries via WebAssembly. To be clear – your browser is now .NET Standard capable!</span></p><p><br></p><p>Interesting, especially in light of the Edge / Chromium rumors. </p><p><br></p><p>Windows in Chrome? In theory you could run a browser-based Windows app on ChromeOS. Heh. </p><p><br></p><p>(Note I haven’t dug into the details, so I don’t know how possible that actually is, or if they will ship the Windows APIs somehow as part of .NET Core, but still. He does go on to caution a bit that many applications will still require installation on a Windows install.)</p>

    • christian.hvid

      04 December, 2018 - 3:54 pm

      <blockquote><em><a href="#377924">In reply to curtisspendlove:</a></em></blockquote><p>I didn't watch the presentation, but this sounds like a reference to <a href="blazor.net" target="_blank">Blazor</a>, which is basically the Mono runtime executing IL code (.NET DLL:s) in the browser without any plugins. Blazor can also run server side, streaming DOM events and changes from/to the browser via SignalR. It's quite cool actually, although I doubt it will ever become mainstream.</p>

      • curtisspendlove

        04 December, 2018 - 11:27 pm

        <blockquote><em><a href="#378065">In reply to christian.hvid:</a></em></blockquote><p>There was a call out to Blazor in the article. And a couple other things. </p><p><br></p><p>I figure MS could make this happen if they wanted. </p>

        • christian.hvid

          05 December, 2018 - 1:20 am

          <blockquote><em><a href="#378237">In reply to curtisspendlove:</a></em></blockquote><p>To be clear, Blazor is not about running Windows apps in the browser. It's still HTML + CSS, but JavaScript is bypassed completely by compiling C# into WebAssembly. If nothing else, it's a first step towards finally weaning the world off JavaScript. I believe we're going to see a host of languages – Dart, Python and Swift come to mind – turned into client-side web languages through the power of WebAssembly.</p>

    • dontbe evil

      05 December, 2018 - 6:53 am

      <blockquote><em><a href="#377924">In reply to curtisspendlove:</a></em></blockquote><p>yeah, what we really need now is a XAML standard</p>

  • coeus89

    04 December, 2018 - 12:48 pm

    <p>I just recently learned the basics of windows forms and WPF as part of my master's in CS. Very interesting that these are now going to be Open Source. I am sure my professor will have a field day with them :).</p>

  • bashmohandes

    04 December, 2018 - 1:20 pm

    <p>And the two developers interested are extremely happy with this news</p>

  • maethorechannen

    Premium Member
    04 December, 2018 - 3:55 pm

    <p><em style="color: rgb(0, 0, 0); background-color: transparent;">But I don’t believe it will result in these technologies making their way to other platforms.</em></p><p><br></p><p><span style="color: rgb(0, 0, 0); background-color: transparent;">The Mono project made a clone of WinForms years ago. Who knows, maybe some new life will be breathed back into .net client development on Linux (though I doubt it, especially if it's left up to the community to implement it)</span></p>

  • thalter

    Premium Member
    04 December, 2018 - 4:36 pm

    <p>Nothing to see here. Windows Forms is dead, and WPF/XAML is not too far behind. </p>

    • christian.hvid

      05 December, 2018 - 2:26 am

      <blockquote><em><a href="#378096">In reply to thalter:</a></em></blockquote><p>As they say on the Iron Islands: what is dead may never die. WinForms and WPF is still used in a gazillion legacy applications, and by open sourcing these technologies Microsoft has essentially guaranteed that they will continue to exist as long as there's a demand. That's a huge deal for developers who worry about being left stranded. </p><p><br></p><p>As for WinUI, that's not legacy at all, but the UI components of UWP turned into a stand-alone library. Open sourcing these can only be good, and I won't be surprised to see the entire Windows 10 SDK being open sourced at some point. </p>

  • skane2600

    05 December, 2018 - 12:40 am

    <p>It won't make any difference. People complained for years about MS software being proprietary instead of open source, but the vast majority were never going to do anything with the code anyway. </p>

Windows Intelligence In Your Inbox

Sign up for our new free newsletter to get three time-saving tips each Friday

"*" indicates required fields

This field is for validation purposes and should be left unchanged.

Thurrott © 2024 Thurrott LLC