Adapter appli winform en fonction des DPI
Bonjour,
Je souhaiterais adapter mon application en fonction des DPI de l'utilisateur.
J'arrive à récupérer la résolution de l'écran ainsi que les DPI.
Après avoir testé mon code sur un PC sous Win XP en 1024*768 et un autre sous Win10 en 1920*1080 je constate que dpix et dpiy valent toujours 96...Je ne comprend pas pourquoi...est-ce normal ?
Autre question : Est-il possible de changer les DPI sous Win 10 ? La seule chose que j'ai trouvé dans les paramètres d'affichage c'est "Mise à l'échelle et disposition" -> "Modifier la taille du texte, des applications et d'autres éléments" où cette option est à 100% par défaut. En modifiant cette valeur et en redémarrant ma machine, mon appli me renvoie toujours 96 dpi en x et en y...
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
| private void button1_Click(object sender, EventArgs e)
{
float dx, dy;
Graphics g = this.CreateGraphics();
try
{
dx = g.DpiX;
dy = g.DpiY;
}
finally
{
g.Dispose();
}
MessageBox.Show($"dpix = {dx}\ndpiy = {dy}\nRésolution = {Screen.PrimaryScreen.Bounds.Width}x{Screen.PrimaryScreen.Bounds.Height}");
} |