Windows Forms Overview
Windows Forms is a set of classes in the .NET Framework that enables developers to quickly create Windows client desktop applications, using powerful libraries for user-interface controls. A form is a visual interface container , usually a window, where information and controls are displayed to an end user. Controls are buttons, labels, graphs and other user interface (UI) elements. The user interacts with the form using Controls.
User interaction, such as clicking a button, generates an event which is then handled by code in your application to perform tasks, for example performing a sum, or opening a folder on the operating system, or interacting with other Windows forms. The standard control set found in Visual Studio for Windows Forms is also extensible with the Usercontrol class or inheriting from an existing standard control, enabling developers to create their own unique controls inheriting properties and functions from the existing control set. There are also a number of third-party companies offering control sets to add to the already extensive library available in Visual Studio.
Windows Forms applications have the ability to connect to all major databases using managed data providers and Entity Framework or Entity Framework Core.
Getting Started With Windows Forms
There are many resources available to help anyone wanting to get started with Windows forms development. The Desktop Platform beginners guide on MSDN is a good place to start. There are also some excellent training videos and guides on the Windows Client website, which also incorporates Windows Presentation Foundation (WPF). There's also a great guide and videos to getting started developing for Windows 7 on MSDN here.
Community Resources
Forums
Blogs and Microsoft documentation
- Windows Forms documentation
- Windows Forms Designer for .NET Core
- Windows Forms Data Binding documentation
- Windows Forms Documentation Updates
- Microsoft Windows Client Blogs
- DotNetCurry
- Dotnetperls - C# Windows Forms
Wiki Articles
- Wiki Article on Globalization of Forms
- TechNet Windows forms Entity Framework Code first from database
- TechNet Windows forms Master-detail view with add/edit/delete on SQL-Server with VB.NET/C#
- TechNet Windows Form Design at Run Time
- TechNet Defensive data programming
Other Resources
- Developing Custom Windows Forms Controls with the .NET Framework
- MSDN Code Gallery
- MSDN Windows Developer Application Gallery
Software Downloads
Other Languages
This article is also available in the following languages: