【问题标题】:Windows form resized at runtimeWindows 窗体在运行时调整大小
【发布时间】:2017-03-08 06:35:02
【问题描述】:

我的 Visual Studio 有问题。表单总是在运行时改变它的大小。

设计时表格大小为1732; 1005如下图所示:

但是当我运行程序时,窗体的大小变为较小的大小(新大小:868;491),如下所示:

我已经尝试更改我正在使用的 PC 的 DPI 和分辨率,但还是一样。为了在运行时获得设计 UI 的实际大小,我将进行哪些更改?

【问题讨论】:

  • 尝试设置表单的MinimumSize 看看是否有帮助,如果有帮助,您可能已将AutoSize 设置为true
  • @am05mhz 我已经尝试设置MinimumSize,但还是一样。我还检查了AutoSize 属性,它设置为 false。
  • 嗯,确实很奇怪,你用的是招聘监视器吗?
  • 是的。我目前的分辨率是 1920x1080。我也尝试使用其他分辨率,但没有帮助。
  • 典型的 Windows 10 问题。它假设今天的每个程序都是 dpiAware,Visual Studio 和 Winforms 设计器肯定是,只是程序员不是。您可以很早地预览您的程序在旧机器上的外观。只需告诉 Windows you are dpiAware,您就可以忽略它一段时间。

标签: c# winforms visual-studio user-interface autoscalemode


【解决方案1】:

尝试将 FormBorderStyle 设置为 FixedDialog 或与 Fixed**** 相关的内容。您也可以尝试将 MinimumSize 和 MaximumSize 设置为 1732; 1005.

【讨论】:

  • 你也可以在运行时通过代码设置formborderstyle。
【解决方案2】:

可能是AutoSize = trueAutoSizeMode = GrowAndShrink 的形式吗? 然后将 AutoSize 更改为 false 或将 AutoSizeMode 设置为 GrowOnly

【讨论】:

    【解决方案3】:

    尝试将表单上的“AutoScaleMode”设置为“None”。我发现我的表单设置为“字体”模式。在我更改了几个 GUI 组件的字体大小之后,表单的布局在运行时与我在设计器中看到的大不相同。将缩放模式设置为“无”后,表单在运行时看起来很棒。

    【讨论】:

      猜你喜欢
      • 2016-01-19
      • 1970-01-01
      • 2013-04-30
      • 2011-12-19
      • 2011-08-02
      • 2012-05-17
      • 1970-01-01
      • 2019-04-30
      • 2019-01-09
      相关资源
      最近更新 更多