Delen via


Formulieren op het hoogste niveau schalen minimale en maximale grootte naar DPI

Formulieren op het hoogste niveau in Windows Forms schalen nu hun MinimumSize en MaximumSize waarden op basis van de dpi (dots per inch) van de monitor wanneer ze in HighDpiMode.PerMonitorV2 de modus worden uitgevoerd.

Versie geïntroduceerd

.NET 8 Preview 1

Vorig gedrag

In .NET 8 blijven de MinimumSize en MaximumSize waarden voor formulieren op het hoogste niveau constant, ongeacht de DPI-modus van de toepassing en de DPI van de monitor waar het formulier wordt weergegeven. Dit heeft soms geleid tot schaalbeperkingen van het formulier op het hoogste niveau.

U kunt zich ook aanmelden voor dit gedrag in .NET 7. Als u zich wilt aanmelden, stelt u de System.Windows.Forms.ScaleTopLevelFormMinMaxSizeForDpi runtimeconfiguratieoptie in die wordt beschreven in de sectie Aanbevolen actie .

Nieuw gedrag

Vanaf .NET 8 schalen formulieren op het hoogste niveau hun MinimumSize en MaximumSize waarden op basis van de DPI van de monitor wanneer ze in HighDpiMode.PerMonitorV2 de modus worden uitgevoerd. Het gedrag van uw app kan op de volgende manieren veranderen:

  • Runtime-afhankelijkheden kunnen worden beïnvloed wanneer de minimale en maximale grootte van het formulier wordt gewijzigd.
  • Er kunnen nieuwe MinimumSizeChanged gebeurtenissen MaximumSizeChanged worden gegenereerd.
  • De grootte van het geschaalde formulier bevat nu nieuwe beperkingswaarden voor de minimum- en maximumgrootte.

Wijzigingscategorie

Deze wijziging is een gedragswijziging.

Reden voor wijziging

Deze wijziging maakt deel uit van een bredere inspanning om de gebruikerservaring van Windows Forms op hoge DPI-beeldschermen te verbeteren. Hiermee kunnen ontwikkelaars minimum- en maximumgrootten instellen voor formulieren op het hoogste niveau zonder rekening te hoeven houden met de DPI van de monitor.

Als het nieuwe gedrag problematisch voor u is, kunt u zich afmelden door in uw runtimeconfig.json-bestand in te false stellenSystem.Windows.Forms.ScaleTopLevelFormMinMaxSizeForDpi.

runtimeconfig.template.json sjabloonbestand:

{
   "configProperties": {
      "System.Windows.Forms.ScaleTopLevelFormMinMaxSizeForDpi": false
   }
}

[appname].runtimeconfig.json uitvoerbestand:

{
   "runtimeOptions": {
      "configProperties": {
         "System.Windows.Forms.ScaleTopLevelFormMinMaxSizeForDpi": false
      }
   }
}

Betrokken API's

N.v.t.

Zie ook