From 762a7713d8e229824d5a83d704d256dd1813387a Mon Sep 17 00:00:00 2001 From: CreateAndInject Date: Mon, 9 Dec 2024 03:43:13 +0800 Subject: [PATCH] Fix high Dpi --- ILSpy/Controls/CustomDialog.cs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ILSpy/Controls/CustomDialog.cs b/ILSpy/Controls/CustomDialog.cs index 994bedffc..b3f33dd51 100644 --- a/ILSpy/Controls/CustomDialog.cs +++ b/ILSpy/Controls/CustomDialog.cs @@ -53,7 +53,7 @@ namespace ICSharpCode.ILSpy.Controls { Rectangle screen = Screen.PrimaryScreen.WorkingArea; SizeF size = g.MeasureString(message, label.Font, screen.Width - 20); - Size clientSize = size.ToSize(); + Size clientSize = new Size((int)(size.Width * 96 / g.DpiX), (int)(size.Height * 96 / g.DpiY)); Button[] buttons = new Button[buttonLabels.Length]; int[] positions = new int[buttonLabels.Length]; int pos = 0; @@ -66,7 +66,7 @@ namespace ICSharpCode.ILSpy.Controls newButton.Text = buttonLabel; newButton.Click += new EventHandler(ButtonClick); SizeF buttonSize = g.MeasureString(buttonLabel, newButton.Font); - newButton.Width = Math.Max(newButton.Width, ((int)Math.Ceiling(buttonSize.Width / 8.0) + 1) * 8); + newButton.Width = Math.Max(newButton.Width, ((int)Math.Ceiling(buttonSize.Width * 96 / g.DpiX / 8.0) + 1) * 8); positions[i] = pos; buttons[i] = newButton; pos += newButton.Width + 4;