ScaleControl chiamato solo quando necessario
Il ridimensionamento è in genere necessario solo quando un'applicazione è in esecuzione in modalità SystemAware o PerMonitorV2 e il monitor ha impostazioni DPI personalizzate che differiscono dal computer in cui è stata progettata l'app. In questi scenari, il runtime di Windows Forms calcola il fattore di scala, in base alle impostazioni DPI personalizzate del monitoraggio e chiama ScaleControl(SizeF, BoundsSpecified) con il nuovo fattore di scala. Per migliorare le prestazioni, ScaleControl
viene ora chiamato solo quando il fattore di scala calcolato è diverso da 1,0F (ovvero, è necessario ridimensionare). Questa modifica può interrompere l'app se esegue l'override di ScaleControl
ed esegue qualsiasi azione personalizzata nell'override.
Versione di introduzione
Manutenzione di .NET 6 6.0.101
Comportamento precedente
Nella versione GA di .NET 6 e nelle versioni precedenti, ScaleControl(SizeF, BoundsSpecified) dell'API pubblica virtuale è stata chiamata ogni volta che PerformAutoScale() è stato chiamato sul controllo del contenitore dell'applicazione. Ovvero, il metodo è stato chiamato ogni volta che si è verificata una modifica del layout o del tipo di carattere, indipendentemente dal fatto che il ridimensionamento fosse necessario.
Nuovo comportamento
A partire dalle versioni di manutenzione di .NET 6, ScaleControl(SizeF, BoundsSpecified) viene chiamato solo quando è necessario ridimensionare la maschera o il controllo. Il runtime di Windows Form calcola il fattore di scala in base alle impostazioni DPI personalizzate del monitoraggio e alle impostazioni DPI del monitor su cui è stata progettata l'applicazione. ScaleControl(SizeF, BoundsSpecified) viene chiamato solo se il fattore di scala indica che è necessaria la scalabilità.
Categoria di modifiche
Questa modifica influisce sulla compatibilità dell'origine.
Motivo della modifica
Questa modifica è stata apportata per migliorare le prestazioni ed evitare layout non necessari.
Azione consigliata
Controllare se il codice esegue azioni personalizzate e non di ridimensionamento in questi metodi sostituibili.