繁体   English   中英

如何在C#中使用屏幕分辨率缩放表单组件?

[英]How to scale form components with screen resolution in C#?

我创建了一个包含一些元素的表单(pictureBox,面板和其中的一些标签),当我以800 * 600的分辨率运行它时,我的应用程序可以正常工作。 但是,当我想以另一种分辨率(即1024 * 768)运行它时,元素将放到错误的位置。 我想根据屏幕分辨率缩放所有表单元素(大小和起点)。 我知道我应该使用anchor和Dock,但是我不能。 我发现了一些有关使用这些技术的链接,但效果不佳。 我使用Visual Studio 2010。

有谁知道我的问题的解决方案吗?

太感谢了

您正在谈论2个不同的问题。

  1. UI缩放/分辨率独立性-使用标准WinForms无法实现。 主要是因为标准的GDI绘图,该WinForms使用从未考虑过此选项。 这将允许缩放您的UI,以便相对大小和位置始终相同,但看起来大小可能有所不同。

  2. 动态布局-此技术可让您的控件根据分辨率调整大小和位置。 WinForms在此方面具有有限的选项,但是可以使用所有控件的Dock和Anchor属性来有限地实现。 这与缩放或分辨率独立性无关。

    另外,一些第三方库也提供了这种扩展,以允许更多的动态布局。

WPF在UI缩放(因为基于矢量)和布局(因为使用双通道布局)方面都更加先进。 但这需要首先使用这项技术。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM