表格在另一台电脑上看起来不同

时间:2012-11-19 15:05:45

标签: c# winforms visual-studio-2010

当我在我的机器上构建表单时,它看起来很好,但是当它在不同的计算机上编译时,表单本身的大小是错误的。移动标签并且不再正确对齐。

我如何保证任何计算机上的所有内容都一样?

我尝试将AutoScaleMode设置为无,但它有所帮助,但标签部分位于相应的文本框下方。

3 个答案:

答案 0 :(得分:5)

字体或DPI不同。

我从未真正找到说AutoScaleMode = (most appropriate of font or dpi)的方法。

但请尝试AutoScaleMode = DPIAutoScaleMode = Font其中一个应该有用。

我们从来没有找到一种可靠的方法来处理这个问题。我们的工作场所用于在所有工作站上执行DPI,但此后发生了变化。处理它的最佳方法是确保使用FlowLayoutPanel或TableLayoutPanels来布局控件,而不是绝对定位控件。

答案 1 :(得分:0)

我最近遇到了这个问题,事实证明,在125%或中等设置下进行编译可以使二进制免受100或150%的变化影响。您仍然需要将AutoScaleMode设置为None。

答案 2 :(得分:0)

即使主题已经结束,我的两分钱因为我遇到了同样的问题,表单有不同的大小(在我的情况下更大)但是控件在修复时相同。我只是通过给予原始形状比控件更小的尺寸来解决它,并允许它自动增长。

我也应用了这篇文章的指南(How to write WinForms code that auto-scales to system font and dpi settings?),但它没有解决我的问题。