.NET Core - Is there a way to implement WinForms?

23,488

Solution 1

Edit: Since I wrote this back in September 2017, the reality has changed. As of the .NET Core SDK 3, Windows Forms support has been added back in. It does not have the platform independance of many other parts of .NET Core and converting between .NET Framework and .NET Core WinForms code needs a conversion tool. But it is there.

No, not really. .NET Core is a specific selection of classes from the larger .NET Framework, which includes Windows Forms. Windows Forms is one of the things they (had to) cut out to make the smaller .NET Core.

Last I looked, .NET Core had support for UWP (a followup to WPF), Xamarin and ASP.Net 5 (Core version). UWP and maybe Xamarin would be suitable for Desktop applications:

Solution 2

Starting from .NET Core 3.0, you can create Windows Forms applications using .NET Core.

VS 2019

The project template is available in VS 2019.

VS 2017

You need to have Visual Studio 2017 Update 15.8 or higher.

  1. Install Visual Studio 2017 Update 15.8 or higher
    [Visual Studio download site.]
  2. Install the latest .NET Core 3.0 SDK
    [daily build (latest changes, but less stable) or preview (more stable, recommended)].

  3. Open command prompt and run the following command to create the project:

    dotnet new winforms -o MyWinFormsApp
    
  4. To build and run the project, you can go to the directory in which the project is created and open MyWinFormsApp.csproj using Visual Studio, build and run it.

    You can also run the following commands if you prefer to build and run from command line:

    cd MyWinFormsApp
    dotnet build
    dotnet run
    

Note

  • Project Template: The project template is available in VS 2019.
  • Designer: Along with GA release of .NET Core 3.0, Windows Forms Designer Preview 1 has also been released and can be used in VS 2019. Also starting from Visual Studio 16.5 Preview 1 and by release of .NET CORE 3.1, Visual Studio has built in support for designer. Take a look at this post. But keep in mind, in this release, many controls aren’t yet supported in designer.

Related links

Solution 3

.Net core 3 preview is released which includes WPF and Win Forms support. You can use it with Visual studio 2019 preview which can publish Win Forms platform independently and self contained.

Share:
23,488
Tom
Author by

Tom

Updated on July 05, 2022

Comments

  • Tom
    Tom almost 2 years

    I'm currently making a bot for a discord server with Discord.NET and I'd like to create a WinForm for this instead of a console. Is there a way to implement WinForms to a .NET Core app?