0
votes

Using .Net 4.8 and Windows Forms, my toolstrip menus with check marks appear normally at 100%, but when the monitor is set to something larger (e.g. 150%), the menu check mark appears far too small, and located in the upper-left of the menu item.

Is there a way to override the painting of the check mark for use on high DPI monitors?

(Using per-monitor DPI scaling, all other form controls draw correctly thanks to the scaling improvements starting in .Net 4.7.2

1
Lots of Bitmaps/Drawings are not scaled . You can handle it yourself: ToolStripProfessionalRenderer Class, ToolStripProfessionalRenderer.OnRenderItemCheck and friends.Jimi
You can also disable the ToolStrip scaling, See in App.Config, <System.Windows.Forms.ApplicationConfigurationSection> Toolstrip.DisableHighDpiImprovements (and friends :)Jimi

1 Answers

0
votes

Turns out the problem wasn't really the checkmarks at all; it was the imagealign of the menu item (apparently, used to align the checkmark when there is no menu image) Setting that to be centered fixed the issue.