如何使.net winform应用程序分辨率友好

问题描述:

我想让我的Winforms应用程序与C#.Net,分辨率友好。我试图按照屏幕分辨率的比例调整所有控制的大小,以编程方式实现。但它并没有给出完美的解决方案。如何使.net winform应用程序分辨率友好

+0

当你说分辨率友好,你的意思是所有的控件和文本窗口内的缩放比例? – galacticfan

+0

您可以使用码头和锚属性 –

+0

WinForms在较大的DPI设置下进行缩放 - 它甚至可能吗? http://www.telerik.com/blogs/winforms-scaling-at-large-dpi-settings-is-it-even-possible- –

您还可以使用锚点大小发生更改的某些分辨率断点。例如,在1024x768 1600x900 1920x1080的情况下,控件全部更改为设置大小,在它们之间它们只取最接近的分辨率断点(1200x900需要1024x768)。

我经常遇到问题,试图使它们完全动态,我一直在处理它。在调整大小时,只需调用一个检查当前大小的函数,并根据需要调整所有锚点的大小。

我试图按照屏幕分辨率的比例调整所有控件的大小,以编程的方式这样做。

我想你会混合两件事。

  1. 要调整的形式向的Windows DPI设置(让你的控制更小或更大),你不需要做任何事情,这是自动进行的。只需更改DPI settings并检查效果。

  2. 在你的表单适应实际分辨率只是使它确保您的形式或者是可调整大小(与对照组停靠)或不可调整大小的对话框会显示至少一些滚动条如果分辨率太小。特别是如果您有派生表单或用户控件,锚可能是一种痛苦,但您始终可以使用docking