Windows Forms (WinForms)
Eintrag zuletzt aktualisiert am: 11.11.2024
Windows Forms ist die älteste Desktop-Oberflächenbibliotheken in .NET, die aber auch in den modernen .NET-Versionen noch enthalten ist und dort auch weiterhin verbessert wird.
Geschichte
Windows Forms wurde in
.NET Framework 1.0 eingeführt und wurde seit .NET Framework3.0 aber nicht mehr wesentlich weiterentwickelt, da Microsoft mit
.NET 3.0 "
Windows Presentation Foundation" (
WPF) als Alternative eingeführt hat. Seit
.NET Framework 3.0 erfährt Windows Forms Konkurrenz im eigenen Lager durch die
Windows Presentation Foundation (
WPF). Trotz der viel reichhaltigeren Grafikmöglichkeiten in
WPF, setzen viele Entwickler von typischen Geschäftsprozeßanwendungen weiterhin auf Windows Forms, da es
WPF (auch in
.NET 3.5) noch an
Steuerelementen und Werkzeugen mangelt.
Am 23.9.2019 erschien Windows Forms auch im Rahmen von
.NET Core 3.0, läuft aber trotz der grundsätzlichen Plattformunabhängigkeit von .NET Core nur auf Windows.
Seitdem gibt es mit jeder neuen Version des modernen .NET auch eine neue Version Windows Forms mit kleineren Verbesserungen
Namensraum
Die Windows Forms werden im
FCL-Namensraum
System.Windows.Forms bereitgestellt. In der Beta-Version des .Net Framework 1.0 hieß der Namensraum noch System.WinForms. Daher sprechen auch heute noch viele Entwickler kurz von "WinForms".
Standardisierung
Windows Forms gehören zu den Teilen der
FCL, die nicht Teil des
ISO- und
ECMA-Standards "
CLI" sind.
Vergleich zu Java
Pendants zu Windows Forms in
Java sind Bibliothek wie das Abstract Window Toolkit (
AWT), Swing und
SWT.
Neuerungen in Windows Forms in .NET Core 3.0
- Application.SetHighDpiMode(HighDpiMode.PerMonitorV2)
Neuerungen in Windows Forms in .NET 5.0
- Neues Steuerelement: TaskDialog = ausgebaute Messagebox
- ListView mit zusammenklappbaren Gruppen
- FileDialog mit mehrfach-Zustand via ClientGuid
- Verbesserungen für UI-Automation
Neuerungen in Windows Forms in .NET 6.0
- Windows Forms auf Windows Arm64
- Application.SetDefaultFont()
- Designer Hosting (wie in .NET Framework)
Neuerungen in Windows Forms in .NET 7.0
Neuerungen in Windows Forms in .NET 9.0
- Mehrfachauswahl im Steuerelement FolderBrowserDialog
- Das Control-Steuerelement, von dem alle Steuerelemente in Windows Forms und auch das Formular als solches erbt, besitzt nun eine Methode InvokeAsync() zur einfachen Ausführung asynchroner Aufgaben.