This version contains updates across all our WinForms controls to support high DPI environments and add new dark color schemes. .NET version compatibility was modernized to the latest supported .NET versions, and a large number of other various feature additions and bug fixes were made to all products.
See the related announcement post for the detailed list of enhancements and updates.
Here's a look at some of the new features.
DPI Awareness
Historically, high DPI support in WinForms has been a mixed bag. Newer Windows API’s and recent updates to .NET have greatly improved the scenario, but high DPI support is still not free and developers must put in the effort to ensure proper DPI awareness.
With our WinForms Controls v23.1 updates, we’ve done our part to make sure our controls can render correctly in high DPI environments. Some of the changes include:
- Scale font sizes.
- Scale control dimensions.
- Scale glyphs.
- Scale raster images using optimal technique for the scale factor (e.g., pixel doubling at 200% dpi).
- Scale built-in dialogs.
- New vector-based common images for SyntaxEditor IntelliPrompt.
- New DPI-friendly dock guides for Docking.
- New DpiHelper class to simplify scaling based on DPI.
- Updated Sample Browser to be DPI-aware.
NOTE: Anyone with a DPI-aware application needs to read our v23.1 conversion topic and thoroughly test. It could be that you were already compensating for lack of DPI-awareness that we now handle, so you don't want to do something like scale our controls if we're already scaling them (causing double scaling).
Dark Color Scheme
We’ve also revamped how all renderers determine which colors are being used so we can better support a dark color scheme. New “Metro Dark” renderers are available for all our products and can be used to better integrate with dark-themed applications.
.NET Compatibility Updates
In regards to .NET version compatibility, we have:
- Validated that v23.1 works great with .NET 7.
- Updated our .NET 5 targets to .NET 6, since that is the lowest supported version of .NET per Microsoft.
- Updated our .NET Framework 4.0 targets to .NET Framework 4.6.2, since that is the lowest supported version of .NET Framework per Microsoft.