Skip to content

Announcing WPF on .NET Core 3.0 #1936

Closed

Description

@grubioe

Announcing WPF on .NET Core 3.0

We are excited to announce that .NET Core 3.0 is now Generally Available! You can learn more about the full scope of the release from the .NET blog linked here.

The WPF team has been working over the last year to port the WPF codebase from .NET Framework to .NET Core with a focus on ensuring that .NET Framework compatibility and ease of porting were maintained. Working on GitHub was a new experience to many of us but the community has been great and we really want to thank all of you that have been actively engaged in making this a reality. Whether it's been building and porting WPF apps via the multiple Previews shipped to those that have been submitting issues and actively commenting. We wanted to give a special recognition to some of our most active contributors: @weltkante, @onovotny, @lindexi, @dotMorten, @AndreyAkinshin, @thomasclaudiushuber, @Youssef1313, @walterv, @AlexChuev, @WilliamAntonRohm- THANKS for all your help in helping us ship this product!

With that said, here is a recap of the work done to date to ship WPF on .NET Core 3:

  • Building for .NET Core required large infrastructure changes to being able to build and ship WPF. As we shared back in April, we spent the first three months of the year on-boarding to the Arcade based build infrastructure which then allowed us to work across our internal and external repos.
  • Porting the WPF code from .NET Framework required us to overcome various environmental and technical differences that are unique to .NET Core 3. The team had to port and modify key test cases to ensure app compatibility with .NET Framework. Additionally, the team identified various changes to different elements of the broader .NET Code base, like modifying System.IO.Packaging to ensure that WPF ran smoothly and providing feedback & PRs to the CoreFX codebase.
  • Open Sourcing all managed binaries, as stated in our May and August updates, the team open sourced most of the WPF code base, we are still not done but we've open sourced the vast majority of the code base for this 3.0 release.
  • In addition to porting, we also incorporated a few features, like building and open sourcing the XAML Compiler in PresentationBuildTasks and enabling App.Local functionality.

Now that .NET Core 3.0 is available our focus shifts to .NET Core 3.1 with an emphasis on ensuring that 3.1 is as stable as possible given that it is an LTS release. We are also working on open sourcing the remaining Native binaries in our roadmap and doing planning for .NET 5.

Thanks again for your engagement, we look forward to seeing all the great WPF applications that will be built on .NET Core.

Activity

  1. added this to the Future milestone on Sep 23, 2019
  2. pinned this issue on Sep 23, 2019
  3. moderndev commented on Sep 24, 2019

    @moderndev

    Well done 😊. ... Milcore next please 😜

  4. aelij commented on Sep 24, 2019

    @aelij

    Any reason PresentationNative was removed from the roadmap? It's where all the text line services are implemented, I was keen on taking a look! :)

  5. weltkante commented on Sep 24, 2019

    @weltkante

    @aelij looks like a mistake, I don't think anything has been announced about retracting part of WPF @grubioe PresentationNative_cor3 probably should still be on the list unless all the native code is being merged into a single C++/CLI assembly (wpfgfx_cor3) ?

    Apparently PresentationNative_cor3 won't be open sourced. The text services contained therein seem to be private code and not possible to open source.

  6. gulshan commented on Sep 24, 2019

    @gulshan

    When Visual Studio will start using .NET core WPF?

  7. weltkante commented on Sep 24, 2019

    @weltkante

    @gulshan probably with 3.1 LTS (VS 16.4) when the designers are finished, they can't make .NET Core WPF designers without running .NET core ... if you meant when VS will completely change to use .NET Core only, probably not anytime soon, there are many 3rd party addins/components which cannot be easily updated. So for the time being running both in parallel is the only option they have.

  8. dbeavon commented on Sep 24, 2019

    @dbeavon

    ... "when the designers are coming" ... Is that scheduled for mid 2020? I had always thought that the WPF designer for core (ie. "wpfsurface") was supposed to be released the same time as .net core 3.0 (ie now). I must be missing the roadmap which gives the actual date.

    I see the main github page says: "Visual Studio WPF designer is not yet available. In short, we need to move to an out-of-proc model (relative to Visual Studio) with the designer. This work will be part of Visual Studio 2019".

    But I thought this was already accomplished. I'm confused. I guess it comes down to this question... if I want to develop WPF with .Net core do I still need to keep installing preview builds of VS 2019? When will that be available in the regular builds?

  9. rladuca commented on Sep 24, 2019

    @rladuca
    Member

    @dbeavon There is a known issue with the designer showing up in release builds of Visual Studio and a fix is coming. In the meantime, there is a workaround see here

  10. dbeavon commented on Sep 24, 2019

    @dbeavon

    @rladuca thanks for the tip. The release build 16.3.0 seems to be working fine for me, probably because of that checkbox for the "preview features".
    (I also have the preview version installed too, but I doubt that is a factor. I would think/hope that the side-by-side installations of VS don't affect each other in any significant way.)

  11. walterlv commented on Sep 25, 2019

    @walterlv
    Contributor

    @grubioe It's amazing for all your efforts on WPF of .NET Core 3.0.

    There may be a small spelling issue on your active contributor names:

    @walterv -> @walterlv I've checked "walterv" but find nothing on .NET Core WPF, so it's me probably.
    @WilliamAntonRohm -> @...... Sorry that I can't find the correct GitHub id.

  12. weltkante commented on Sep 25, 2019

    @weltkante

    @dbeavon I don't know where you take "mid 2020" for 3.1 , the roadmaps I've seen say its November 2019 (including the one linked in the OP issue above)

  13. grubioe commented on Sep 25, 2019

    @grubioe
    ContributorAuthor

    @walterlv my apologies, it's been corrected... Thanks!

    .NET Core 3.1 is planned for late November 2019.

  14. added a commit that references this issue on Sep 27, 2019
  15. weltkante commented on Sep 30, 2019

    @weltkante

    @aelij apparently PresentationNative_cor3 won't be open sourced (see comment on roadmap PR linked above). The text services contained therein seem to be private code and not possible to open source.

  16. unpinned this issue on Dec 3, 2019
  17. vatsan-madhavan commented on Dec 3, 2019

    @vatsan-madhavan
    Member

    Closing - please see new update at #2273

  18. ghost locked as resolved and limited conversation to collaborators on Apr 14, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions