Replaced several times but still live and kicking: Windows Forms updated for .NET 6.0

High DPI continues to be a challenge in ancient desktop framework


Microsoft's oldest .NET desktop framework, Windows Forms, has been improved for .NET 6, though full support for high resolution displays is "a challenging undertaking," according to software engineer Igor Velikorossov.

The first release of Windows Forms was in February 2002, when it was positioned as the successor to Visual Basic 6.0 (1998) as a rapid application development framework for Windows desktop applications. There was huge friction in that transition, but it was nevertheless popular and easy to use. Underneath Windows Forms lies the Win32 API and the GDI+ graphics API.

In late 2006, Microsoft introduced Windows Vista and along with it a new .NET desktop framework called Windows Presentation Foundation (WPF). Unlike Windows Forms, it used DirectX to render graphics, enabling richer designs with hardware accelerated performance.

WPF was also designed to scale nicely irrespective of the display resolution and Windows display settings, thanks to use of layout managers for positioning user interface elements.

Windows Forms in Visual Studio 2022

Windows Forms in Visual Studio 2022

Why is Microsoft still investing in Windows Forms, the oldest .NET desktop framework, when it has been replaced several times, first by WPF, then by Windows 8 with its Windows Runtime APIs, then by UWP (Universal Windows Platform), and most recently by WinUI 3 (also known as Project Reunion)? The answer is simply the popularity of the framework and the number of legacy business applications that use it. Third-party component vendors also gave good support to the platform.

It seems that despite the technical superiority of WPF, many business developers find Windows Forms easier, perhaps because of its apparently simple form designer where a button or checkbox stays where it is placed, at least until users with different display settings complain about overlapping text or chopped-off characters.

Windows Forms is only for Windows and not much was done to it for some years, especially as it was for .NET Framework and most development effort was going into the open source .NET Core. That changed when .NET Core 3.0 was released, with support for both Windows Forms and WPF. At this point both frameworks became open source, though this was a fork and Velikorossov's post about what's new in Windows Forms concerns the .NET 6.0 version, not the .NET Framework one.

Migration of an existing application is not straightforward and may be impossible without major surgery.

Some features of .NET Framework, include Application Domains, .NET Remoting, Windows Workflow Foundation, and Windows Communication Foundation (WCF), with WCF being the most problematic.

Remote communication using SOAP (an XML remoting standard) and WCF was widely used, often with ASP.NET on the web server and a Windows Forms client.

Despite these issues, Microsoft has added features including accessibility improvements – such as better screen narrator support and user interface automation – updated templates to support the new .NET 6.0 global using directive, and new runtime designers. "In .NET Core 3.0 we started to modernize and rejuvenate Windows Forms," said Velikorossov.

The biggest challenge remains scaling and high DPI (dots per inch) displays. The original scaling method for Windows Forms was based on the default system font, on whose size all the autoscaling of a form depended. It was not a good system. There were rounding errors, issues with user controls and with form inheritance, and "forms and their child controls could only be concurrently designed by multiple developers if their machine resolutions were the same," say the docs.

There were tweaks, but high DPI support did not arrive until .NET Framework 4.7 and only worked on Windows 10 Creators Update and later. When the .NET Core version came along, Velikorossov describes how the team changed the default font and "quickly learned that a great number of things depended on this default font metrics."

The aim of full support for per-monitor V2 DPI awareness remains, meaning that applications are never bitmap scaled by Windows (causing fuzzy fonts) but are notified when DPI changes, maybe because of a setting change or a window being dragged to another display. "It is a challenging undertaking, and sadly we couldn't achieve as much as we'd hoped," said Velikorossov, but there are improvements with correct scaling of container controls and MDI child windows "in most scenarios."

There are also community contributions to Windows Forms for .NET 6.0 including MessageBox, used for quick dialogs requiring user confirmation or input, optionally getting two new buttons: Try Again, and Continue.

Developers reacted to Velikorossov's post with some requests. "Please add native dark mode," was one, though apparently a challenge here is that "Windows still does not have a documented way to check whether the system is in light or dark mode." Another commented gratefully that the "Form Designer in release VS 2022 works much better, it was way too slow."

When the .NET Foundation conducted a developer survey earlier this year, WPF and Windows Forms came out as more widely used than Microsoft's more recent efforts.

It is not a good choice for a GUI application today, being Windows-only and a weak option even on Windows, yet legacy combined with its initial ease of use means it will be around for many years to come, something developers are less sure about with some other .NET technologies. ®

Similar topics

Broader topics


Other stories you might like

  • Lonestar plans to put datacenters in the Moon's lava tubes
    How? Founder tells The Register 'Robots… lots of robots'

    Imagine a future where racks of computer servers hum quietly in darkness below the surface of the Moon.

    Here is where some of the most important data is stored, to be left untouched for as long as can be. The idea sounds like something from science-fiction, but one startup that recently emerged from stealth is trying to turn it into a reality. Lonestar Data Holdings has a unique mission unlike any other cloud provider: to build datacenters on the Moon backing up the world's data.

    "It's inconceivable to me that we are keeping our most precious assets, our knowledge and our data, on Earth, where we're setting off bombs and burning things," Christopher Stott, founder and CEO of Lonestar, told The Register. "We need to put our assets in place off our planet, where we can keep it safe."

    Continue reading
  • Conti: Russian-backed rulers of Costa Rican hacktocracy?
    Also, Chinese IT admin jailed for deleting database, and the NSA promises no more backdoors

    In brief The notorious Russian-aligned Conti ransomware gang has upped the ante in its attack against Costa Rica, threatening to overthrow the government if it doesn't pay a $20 million ransom. 

    Costa Rican president Rodrigo Chaves said that the country is effectively at war with the gang, who in April infiltrated the government's computer systems, gaining a foothold in 27 agencies at various government levels. The US State Department has offered a $15 million reward leading to the capture of Conti's leaders, who it said have made more than $150 million from 1,000+ victims.

    Conti claimed this week that it has insiders in the Costa Rican government, the AP reported, warning that "We are determined to overthrow the government by means of a cyber attack, we have already shown you all the strength and power, you have introduced an emergency." 

    Continue reading
  • China-linked Twisted Panda caught spying on Russian defense R&D
    Because Beijing isn't above covert ops to accomplish its five-year goals

    Chinese cyberspies targeted two Russian defense institutes and possibly another research facility in Belarus, according to Check Point Research.

    The new campaign, dubbed Twisted Panda, is part of a larger, state-sponsored espionage operation that has been ongoing for several months, if not nearly a year, according to the security shop.

    In a technical analysis, the researchers detail the various malicious stages and payloads of the campaign that used sanctions-related phishing emails to attack Russian entities, which are part of the state-owned defense conglomerate Rostec Corporation.

    Continue reading
  • FTC signals crackdown on ed-tech harvesting kid's data
    Trade watchdog, and President, reminds that COPPA can ban ya

    The US Federal Trade Commission on Thursday said it intends to take action against educational technology companies that unlawfully collect data from children using online educational services.

    In a policy statement, the agency said, "Children should not have to needlessly hand over their data and forfeit their privacy in order to do their schoolwork or participate in remote learning, especially given the wide and increasing adoption of ed tech tools."

    The agency says it will scrutinize educational service providers to ensure that they are meeting their legal obligations under COPPA, the Children's Online Privacy Protection Act.

    Continue reading
  • Mysterious firm seeks to buy majority stake in Arm China
    Chinese joint venture's ousted CEO tries to hang on - who will get control?

    The saga surrounding Arm's joint venture in China just took another intriguing turn: a mysterious firm named Lotcap Group claims it has signed a letter of intent to buy a 51 percent stake in Arm China from existing investors in the country.

    In a Chinese-language press release posted Wednesday, Lotcap said it has formed a subsidiary, Lotcap Fund, to buy a majority stake in the joint venture. However, reporting by one newspaper suggested that the investment firm still needs the approval of one significant investor to gain 51 percent control of Arm China.

    The development comes a couple of weeks after Arm China said that its former CEO, Allen Wu, was refusing once again to step down from his position, despite the company's board voting in late April to replace Wu with two co-chief executives. SoftBank Group, which owns 49 percent of the Chinese venture, has been trying to unentangle Arm China from Wu as the Japanese tech investment giant plans for an initial public offering of the British parent company.

    Continue reading
  • SmartNICs power the cloud, are enterprise datacenters next?
    High pricing, lack of software make smartNICs a tough sell, despite offload potential

    SmartNICs have the potential to accelerate enterprise workloads, but don't expect to see them bring hyperscale-class efficiency to most datacenters anytime soon, ZK Research's Zeus Kerravala told The Register.

    SmartNICs are widely deployed in cloud and hyperscale datacenters as a means to offload input/output (I/O) intensive network, security, and storage operations from the CPU, freeing it up to run revenue generating tenant workloads. Some more advanced chips even offload the hypervisor to further separate the infrastructure management layer from the rest of the server.

    Despite relative success in the cloud and a flurry of innovation from the still-limited vendor SmartNIC ecosystem, including Mellanox (Nvidia), Intel, Marvell, and Xilinx (AMD), Kerravala argues that the use cases for enterprise datacenters are unlikely to resemble those of the major hyperscalers, at least in the near term.

    Continue reading

Biting the hand that feeds IT © 1998–2022