What's new in Windows Forms for .NET 10 Preview

This article provides a high-level overview about what's new with Windows Forms (WinForms) in .NET 10 Preview. For detailed information, see the release announcements.

.NET 10 Preview 5 was released in June 2025.

Release announcements

Each release announcement provides detailed information about Windows Forms changes for .NET 10:

Clipboard changes

Windows Forms is shipping new code for the clipboard API. The clipboard is redesigned in a way that its code can be shared with Windows Presentation Foundation (WPF). Both desktop technologies now share the same code and unify how they interact with the clipboard.

.NET 9 obsoleted BinaryFormatter, which is used in some clipboard operations. These clipboard operations required you to opt in to compatibility package, or work around the operation. To ease the pain of moving away from BinaryFormatter, .NET 10 is obsoleting certain clipboard methods to indicate that they shouldn't be used. More methods are being added to help JSON serialization with clipboard data, circumventing the need for BinaryFormatter.

Custom designer improvements

Several UITypeEditor types have been ported from .NET Framework, including ToolStripCollectionEditor and several editors related to the DataGridView control. These editors are now discoverable by the PropertyGrid and the Windows Forms Designer Actions panel.

SnapLines were fixed for custom designers.

Bug fixes

Here are some of the bugs fixed in Windows Forms for .NET 10:

  • If the DataGridView was in edit mode while the hosting dialog was closed, it would throw InvalidOperationException. The bug causing this has been fixed.
  • Compiler Error WFO1000 has been improved to reduce false positives related to interfaces that derive from IComponent.
  • Fixed a regression with PrinterSettings.DefaultPageSettings.Color returning an incorrect value.
  • Resolving a memory leak in the MSHTML component.

Accessibility

Improved NVDA screen reader support.

Code cleanup

Removed deprecated .NET runtime and unnecessary package references. Code style has been cleaned up to address warnings and improve code quality.

Analyzer improvements

Existing analyzers have been fine-tuned to reduce false positives.

New analyzers have been added: