Skip to content
Windows Forms is a .NET Core UI framework for building Windows desktop applications.
C# Visual Basic PowerShell Shell Rich Text Format CMake
Branch: master
Clone or download
Latest commit e15db19 Nov 12, 2019
Type Name Latest commit message Commit time
Failed to load latest commit information.
.github Update Jul 30, 2019
Documentation Update (#2113) Oct 28, 2019
eng [master] Update dependencies from dotnet/arcade (#2317) Nov 11, 2019
pkg Add Microsoft.VisualBasic (#1675) Oct 4, 2019
src Merge pull request #2243 from hughbe/QACONTAINER-cleanup Nov 12, 2019
.editorconfig add resx config (#548) Mar 11, 2019
.gitattributes Collapse XLF files in PRs by default (#1938) Sep 18, 2019
.gitignore [master] Update dependencies from dotnet/arcade (#622) Mar 28, 2019
CODEOWNERS add code owners to make adding PR reviewers easier (#61) Nov 19, 2018 Standardize docs formatting (#233) Jan 7, 2019
Directory.Build.props set EmbedUntrackedSources to embed SR files into the PDB in order to … Oct 8, 2019
Directory.Build.targets Retarget to .NET 5.0 Sep 4, 2019
LICENSE.TXT Initial commit of (squashed) sample from… Oct 15, 2018
NuGet.config Move to dotnet-eng feed (#2318) Nov 8, 2019 Update Oct 4, 2019
Restore.cmd Add intellisense blob as part of native toolset restore and int… (#1241) Jun 28, 2019
THIRD-PARTY-NOTICES.TXT add license notice for Ookii.Dialogs Nov 30, 2018
Winforms.sln Add Microsoft.VisualBasic (#1675) Oct 4, 2019
azure-pipelines.yml move var group outside of ci.yml so it's available in post build Oct 25, 2019
build-local.ps1 Update dependencies from build 2… Oct 24, 2019
build.cmd rename binlog (#440) Feb 14, 2019 Make shell files in eng/common executable (#940) May 8, 2019
codecov.yml increase precision, formalize rounding, comments, change PR comment c… Mar 18, 2019
global.json [master] Update dependencies from dotnet/arcade (#2317) Nov 11, 2019 Merge pull request #1112 from OliaG/roadmap-update Jun 21, 2019

Windows Forms

License: MIT

Windows Forms (WinForms) is a UI framework for building Windows desktop applications. It is a .NET wrapper over Windows user interface libraries, such as User32 and GDI+. It also offers controls and other functionality that is unique to Windows Forms.

Windows Forms also provides one of the most productive ways to create desktop applications based on the visual designer provided in Visual Studio. It enables drag-and-drop of visual controls and other similar functionality that make it easy to build desktop applications.

Windows Forms Designer

For more information about the designer, please see the Windows Forms Designer Documentation.

To learn about project priorities as well as status and ship dates see the Windows Forms Roadmap.

This repository contains WinForms for .NET Core. It does not contain the .NET Framework variant of WinForms.

Windows Presentation Foundation (WPF) is another UI framework used to build Windows desktop applications which is supported on .NET Core. WPF and Windows Forms applications run only on Windows operating systems. They are part of the Microsoft.NET.Sdk.WindowsDesktop SDK. You are recommended to use Visual Studio 2019 Preview 1 to use WPF and Windows Forms with .NET Core.

Getting started

Build Status & Dependency Flow

Public CI ➡️ Internal CI ➡️ Core Setup CI ➡️ Core SDK CI
master Build Status Build Status Build Status Build Status
release/3.0 Build Status Build Status Build Status Build Status
release/3.1 Build Status Build Status Build Status Build Status

Code Coverage

Production Code
master codecov
release/3.0 codecov
release/3.1 codecov


We are in the process of doing four projects with Windows Forms:

  1. Port Windows Forms to .NET Core.

  2. Publish source to GitHub.

  3. Publish (and in some cases write) tests to GitHub and enable automated testing infrastructure.

  4. Enable the Visual Studio WinForms designer to work with WinForms running on .NET Core.

The first two tasks are well underway. Most of the source has been published to GitHub although we are still bringing the codebase up to functional and performance parity with .NET Framework.

We have published very few tests and have very limited coverage for PRs at this time as a result. We will be slow in merging PRs as a result. We will add more tests in 2019, however, it will be an incremental process. We welcome test contributions to increase coverage and help us validate PRs more easily.

The Visual Studio WinForms designer is not yet available and will be part of a Visual Studio 2019 update. In short, we need to move to an out-of-proc model (relative to Visual Studio) for the designer.

How to Engage, Contribute, and Provide Feedback

Some of the best ways to contribute are to try things out, file bugs, join in design conversations, and fix issues.

.NET Framework issues

Issues with .NET Framework, including WinForms, should be filed on VS developer community, or Product Support. They should not be filed on this repository.

Reporting security issues

Security issues and bugs should be reported privately via email to the Microsoft Security Response Center (MSRC) You should receive a response within 24 hours. If for some reason you do not, please follow up via email to ensure we received your original message. Further information, including the MSRC PGP key, can be found in the Security TechCenter. Also see info about related Microsoft .NET Core and ASP.NET Core Bug Bounty Program.

Relationship to .NET Framework

This code base is a fork of the Windows Forms code in the .NET Framework. We intend to release .NET Core 3.0 with Windows Forms having parity with the .NET Framework version. Over time, the two implementations may diverge.

The Update on .NET Core 3.0 and .NET Framework 4.8 provides a good description of the forward-looking differences between .NET Core and .NET Framework.

Code of Conduct

This project uses the .NET Foundation Code of Conduct to define expected conduct in our community. Instances of abusive, harassing, or otherwise unacceptable behavior may be reported by contacting a project maintainer at


.NET Core (including the Windows Forms repository) is licensed under the MIT license.

.NET Foundation

.NET Core WinForms is a .NET Foundation project.

See the .NET home repository to find other .NET-related projects.

You can’t perform that action at this time.