Я не могу сделать свое приложение зависимым от DPI. В app.manifest я раскомментировал:
<application xmlns="urn:schemas-microsoft-com:asm.v3">
<windowsSettings>
<dpiAware xmlns="http://schemas.microsoft.com/SMI/2005/WindowsSettings">true</dpiAware>
</windowsSettings>
</application>
В App.config я добавил:
<appSettings>
<add key="EnableWindowsFormsHighDpiAutoResizing" value="true" />
</appSettings>
Я слежу за вопросами и ответами в Сделать приложение vb.net с учетом DPI и https://www.telerik.com/blogs/winforms-scaling-at-large-dpi-settings-is-it-even-possible-
Мое приложение имеет единую форму с одним пользовательским элементом управления. На каждом из них я пробовал запускать приложение с AutoScaleMode для каждой из различных настроек: None, Dpi, Font, Inherit (по умолчанию используется Font). Я использую единственный монитор, который установлен на заводе-изготовителе на моем ноутбуке.
В любом случае e.graphics.dpix и e.graphics.dpiy (где e - PaintEventArgs) равны 96.0. Оно должно быть 128,0 = 1920 пикселей / 15 дюймов и 128,0 = 1080 / 8,4375 дюймов.
Что мне не хватает?