控制 C# windows 窗体的大小问题,在编译时看起来不同,在运行时看起来不同

Posted

技术标签:

【中文标题】控制 C# windows 窗体的大小问题,在编译时看起来不同,在运行时看起来不同【英文标题】:Controls size issues of C# windows form, looks different on compile time and different in Run Time 【发布时间】:2021-09-09 19:58:14 【问题描述】:

我有一些奇怪的问题,我正在根据要求设置控件位置以及添加新控件,但是当我构建项目并运行它时,它看起来完全不同,所有控件位置都已更改。当我开始在不同分辨率的 Windows 机器上工作时发生了这个问题。现在如果我复制这个项目,任何 Windows 系统看起来都一样。 我正在分享两个屏幕截图。

当我根据我的要求设置控制位置时,显示此图像。

这张图片显示了我运行应用程序时的控制状态。

希望你能理解这个问题。

【问题讨论】:

根据您提供的图片。如果winform app是在其他电脑上开发的,就有可能出现这个问题。您可以将AutoScaleMode 设置为 Dpi 以适应计算机。 @JackJJun-MSFT 是的。它有效...谢谢。 很高兴听到您的问题已经解决,我已经做出了回答,您可以点击“✔”将我的回复标记为已接受的答案。它还将帮助其他人解决类似的问题。 【参考方案1】:

根据你提供的图片,如果winform应用是在其他电脑上开发的,可能会出现问题。

您可以将AutoScaleMode 设置为 Dpi 以适应计算机。

this.AutoScaleMode = AutoScaleMode.Dpi;

【讨论】:

以上是关于控制 C# windows 窗体的大小问题,在编译时看起来不同,在运行时看起来不同的主要内容,如果未能解决你的问题,请参考以下文章

C#用windows Api Hooks 控制鼠标键盘在一个窗体内

如何通过在 C# windows 窗体中的文本框中输入来更改图像的大小?

如何在 C# windows 窗体中绘制可缩放图像

C# Windows 窗体 ListView 在按宽度自动调整大小 = -1 后获取列的实际宽度?

如何设置禁止改变“C# WINFORM”窗体大小?

在 Windows 窗体 c# 中绘制动态面板