ScaleControl appelé uniquement quand cela est nécessaire

La mise à l’échelle est généralement nécessaire uniquement quand une application s’exécute en mode SystemAware ou PerMonitorV2, et que le moniteur a des paramètres PPP personnalisés qui diffèrent de ceux de la machine sur laquelle l’application a été conçue. Dans ces scénarios, le runtime Windows Forms calcule le facteur d’échelle, en fonction des paramètres PPP personnalisés du moniteur, et appelle ScaleControl(SizeF, BoundsSpecified) avec le nouveau facteur d’échelle. Pour améliorer les performances, ScaleControl est désormais appelé uniquement quand le facteur d’échelle calculé n’est pas 1.0F (autrement dit, la mise à l’échelle est nécessaire). Ce changement peut arrêter votre application s’il remplace ScaleControl et effectue des actions personnalisées dans le remplacement.

Version introduite

Maintenance 6.0.101 pour .NET 6

Ancien comportement

Dans la version GA de .NET 6 et versions antérieures, l’API publique virtuelle ScaleControl(SizeF, BoundsSpecified) était appelée chaque fois que PerformAutoScale() était appelé sur le contrôle conteneur de l’application. Autrement dit, la méthode était appelée chaque fois qu’il y avait un changement de disposition ou de police, que la mise à l’échelle soit nécessaire ou non.

Nouveau comportement

À partir des versions de maintenance de .NET 6, ScaleControl(SizeF, BoundsSpecified) est appelé uniquement quand il faut mettre à l’échelle le formulaire ou le contrôle. Le runtime Windows Forms calcule le facteur d’échelle en fonction des paramètres PPP personnalisés du moniteur et des paramètres PPP du moniteur sur lequel l’application a été conçue. ScaleControl(SizeF, BoundsSpecified) est appelé uniquement si le facteur d’échelle indique que la mise à l’échelle est nécessaire.

Modifier la catégorie

Ce changement affecte la compatibilité de la source.

Raison du changement

Ce changement a été effectué pour améliorer les performances et éviter les dispositions inutiles.

Vérifiez si votre code effectue des actions personnalisées sans mise à l’échelle dans ces méthodes remplaçables.

API affectées