Compartilhar via


Os formulários são dimensionados de acordo com o AutoScaleMode

Em aplicativos no modo PerMonitorV2, o Windows Forms tem usado tamanhos lineares (também conhecidos como tamanhos escalonados por DPI) fornecidos pelo Windows para janelas de nível superior, independentemente do AutoScaleMode. Essa implementação foi problemática ao usar o AutoScaleMode.Font modo de dimensionamento, em que Form o dimensionamento deve ser não linear. Os controles filho são dimensionados não linearmente e dependem da fonte atribuída aos controles Form ou filho.

Essa alteração permite o tratamento de mensagens WM_GETDPISCALEDSIZE para objetos de nível Form superior. Ele utiliza WM_GETDPISCALEDSIZE para informar ao Windows que o Form pode precisar de tamanhos não lineares dependendo de AutoScaleMode.

Versão introduzida

.NET 8 versão prévia 1

Comportamento anterior

Anteriormente, em aplicativos no modo PerMonitorV2, as janelas de nível superior eram dimensionadas pelo Windows e desconsideravam AutoScaleMode conforme especificado no aplicativo WinForms. Essa implementação levou a um dimensionamento inconsistente entre objetos Form e seus controles filho.

Novo comportamento

Em aplicativos no modo PerMonitorV2, janelas de nível superior (como Formulários) são dimensionadas de acordo com AutoScaleMode. Essa implementação garante que as janelas de nível superior sejam dimensionadas de maneira consistente com seus controles filho.

Alterar categoria

Essa alteração é uma mudança comportamental.

Motivo da alteração

Essa alteração foi feita para melhorar a experiência de alta DPI para aplicativos do Windows Forms no PerMonitorV2 modo.

Nenhuma ação é necessária.

APIs afetadas

Não aplicável

Consulte também