Conectați-vă cu Microsoft
Conectați-vă sau creați un cont
Salut,
Selectați un alt cont.
Aveți mai multe conturi
Alegeți contul cu care doriți să vă conectați.

Simptome

Aplicații Windows Forms care implementează propriul scalare logica pentru setări DPI înalt întâmpina neobişnuit scalare dacă aceste aplicații incluse în Microsoft .NET Framework 4.5.2 DPI înalt modificările utilizând setarea de fișier .config următoarele:

<appSettings>
<add key="EnableWindowsFormsHighDpiAutoResizing" value="true" />

</appSettings>


Rezolvare

Aplicațiile care se aplică un factor de scalare pe partea de sus valoarea scalate va întâmpina suplimentar scalare atunci când acestea sunt incluse în .NET Framework 4.5.2 DPI înalt îmbunătățirile. Pentru a rezolva această problemă, actualizați aplicației logica Scalare pentru a aplica scalare pe valoarea implicită ToolStrip.ImageScalingSize . Această modificare va evita introducerea suplimentară scalare.

De exemplu, aplicațiile care au următorul cod va scala ToolStrip butoane de două ori:

public MyToolStrip()
{

IntPtr hDC = GetDC(new HandleRef(null, IntPtr.Zero));

double xFactor = GetDeviceCaps(new HandleRef(null, hDC), LOGPIXELSX) / 96.0;

double yFactor = GetDeviceCaps(new HandleRef(null, hDC), LOGPIXELSY) / 96.0;

this.ImageScalingSize = new Size((int)(this.ImageScalingSize.Width * xFactor), (int)(this.ImageScalingSize.Height * yFactor));

InitializeComponent();

}


Se poate utiliza codul următor la scară la dimensiunea implicită constantă sau de la dimensiunea imaginii dorită:

this.ImageScalingSize = new Size((int)(16 * xFactor), (int)(16 * yFactor));


  

Aveți nevoie de ajutor suplimentar?

Doriți mai multe opțiuni?

Explorați avantajele abonamentului, navigați prin cursurile de instruire, aflați cum să vă securizați dispozitivul și multe altele.

Comunitățile vă ajută să adresați întrebări și să răspundeți la întrebări, să oferiți feedback și să primiți feedback de la experți cu cunoștințe bogate.

Au fost utile aceste informații?

Cât de mulțumit sunteți de calitatea limbajului?
Ce v-a afectat experiența?
Apăsând pe Trimitere, feedbackul dvs. va fi utilizat pentru a îmbunătăți produsele și serviciile Microsoft. Administratorul dvs. IT va avea posibilitatea să colecteze aceste date. Angajamentul de respectare a confidențialității.

Vă mulțumim pentru feedback!

×