【问题标题】:How to make .net winform application resolution friendly如何使 .net winform 应用程序解析友好
【发布时间】:2016-04-28 12:37:08
【问题描述】:

我正在尝试使用 C#.Net 制作我的 winforms 应用程序,分辨率友好。我试图以编程方式通过根据屏幕分辨率的比例调整所有控件的大小来做到这一点。但它并不能在每种形式中都提供完美的分辨率。

【问题讨论】:

  • 当您说分辨率友好时,您是指缩放窗口窗体中的所有控件和文本吗?
  • 您可以使用 Dock 和 Anchor 属性
  • WinForms 在大 DPI 设置下缩放——甚至可能吗? telerik.com/blogs/…

标签: c# .net vb.net winforms


【解决方案1】:

我尝试通过仅根据屏幕分辨率比率调整所有控件的大小来以编程方式这样做。

我认为你混合了两件事。

  1. 要将表单调整为 Windows DPI 设置(使控件变小或变大),您无需执行任何操作,这是自动执行的。换DPI settings看看效果就好了。

  2. 要使您的表单适应实际的分辨率,只需确保您的表单可以调整大小(并且控件已停靠)或不可调整大小的对话框将至少显示一些滚动条如果分辨率太小。锚点可能会很痛苦,特别是如果您有派生的表单或用户控件,但您始终可以使用docking

【讨论】:

    【解决方案2】:

    您还可以使用锚点大小发生变化的某些分辨率断点。例如,在 1024x768 1600x900 1920x1080 时,所有控件都更改为设定的大小,在两者之间,它们只采用最接近它们的分辨率断点(1200x900 将采用 1024x768)。

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-06-23
      • 2011-11-13
      相关资源
      最近更新 更多