Disable scaling issues with Windows Forms Designer in Visual Studio or Disable notifications

preview_player
Показать описание
Disable DPI-awareness to fix HDPI / scaling issues with Windows Forms Designer in Visual Studio

Visual Studio is a dots per inch (DPI) aware application, which means the display scales automatically. If an application states that it's not DPI-aware, the operating system scales the application as a bitmap. This behavior is also called DPI virtualization. The application still thinks that it's running at 100% scaling, or 96 dpi.

Scaling issues in Windows Forms Designer on HDPI monitors

Since the Windows Forms Designer in Visual Studio doesn't have scaling support, display issues can occur when you open some forms on high dots per inch (HDPI) monitors.

If you aren't working in the designer and don't need to adjust the layout of your form, you can ignore the informational bar and continue working in the code editor or in other types of designers. (You can also disable notifications so that the informational bar doesn't continue to appear.) Only the Windows Forms Designer is affected.

Restart Visual Studio as a DPI-unaware process

The preferred solution to this issue is to restart Visual Studio as a DPI-unaware process. Do so by selecting the option on the yellow informational bar.

When Visual Studio runs as a DPI-unaware process, the designer layout issues are resolved, but fonts may appear blurry and you may see issues in other designers such as the XAML Designer.. Visual Studio displays a different yellow informational message when it runs as a DPI-unaware process that says Visual Studio is running as a DPI-unaware process. WPF and XAML designers might not display correctly. The informational bar also provides an option to Restart Visual Studio as a DPI-aware process.

It's important to restart Visual Studio as a DPI-aware process when you're finished working in the Windows Forms Designer. If you close and reopen Visual Studio when it's running in DPI-unaware mode, it becomes DPI-aware again. You can also select the Restart Visual Studio as a DPI-aware process option in the informational bar.
Add a registry entry

As option two, you can mark Visual Studio as DPI-unaware by modifying the registry. Open Registry Editor and add an entry to the HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers subkey:

Entry: Depending on whether you're using Visual Studio 2017, 2019, or 2022, use one of these values:

Type: REG_SZ
Value: DPIUNAWARE

Visual Studio remains in DPI-unaware mode until you remove the registry entry.

Set your display scaling setting to 100%

A third option to resolving the issue is to set your display scaling setting to 100% in Windows 10, type display settings in the task bar search box, and then select Change display settings. In the Settings window, set Change the size of text, apps, and other items to 100%. However, setting your display scaling to 100% may be undesirable since it can make the user interface too small to be usable.
Disable notifications

You can choose not to be notified of DPI scaling issues in Visual Studio. You might want to disable notifications if you aren't working in the designer, for example.

To disable notifications:

Choose Tools - Options to open the Options dialog.
In the Options dialog, choose Windows Forms Designer - General, and set DPI Scaling Notifications to False.

If you want to later reenable scaling notifications, set the property to True.

source
Рекомендации по теме
Комментарии
Автор

It works, but theres a slight problem. I have 4K monitor and when i set it to 100 percent it becomes so SO small. Last time i had a hard time turning it back to 175 (optimal for me) percentage to see.

stanosibi
Автор

This is a workaround. Not an actual fix. Does not work well with 4k monitors.

mrbalazs
Автор

Now they got rid of the "Restart with 100%" link. Now all it says is "Learn More". How do I manually set to 100%? Better yet how to get it to permanently just be 100%?

badAtPickingUsernames
Автор

This fixes the notifications in VS. It does not fix scaling issues with an application.

jonathanmontrose
visit shbcf.ru