windows forms .net框架中的移位控件

本文关键字:控件 forms net 框架 windows | 更新日期: 2023-09-27 18:13:35

我有一个奇怪的问题。我在c#和。net框架3.5中设计了一个windows窗体应用程序。在运行时,表单及其控件在除我的笔记本电脑之外的所有计算机上都很好,其中控件不在正确的位置。

如果我在我的笔记本电脑上从头开始设计表单,并且定位正确,那么它将导致其他计算机的形状无效。

我的努力:

  • 如果我在安全模式下运行窗口,窗体大小和控制位置是正确的。
  • 我已经卸载了视频驱动程序,使用默认的windows版本,但问题仍然存在。
  • 我使用了不同的框架,如2.0和4.0,以及不同的Visual studio版本,它们都有同样的问题。
  • 实际上所有公司的。net框架产品都指出了同样的问题。

我的电脑设置:笔记本电脑1557 Studio DELL显卡ATI Radeon HD 4500

windows forms .net框架中的移位控件

当文本大小人为地增加到125%时,文本和控件将围绕表单并将所有内容向下/向上推。如果你打算支持这一点,你只需要重新设计你的表单来处理你所支持的不同的放大级别,并在你的应用程序中测试那些放大的文本模式,直到你对它们的外观感到满意。这不是你可以严格控制的东西,因为增加文本大小是一个可访问性特性。

我认为这是由于屏幕分辨率的差异。我相信在这两种情况下控件的实际位置是相同的,在一种情况下屏幕"更大",因此你的控件出现在屏幕上的不同位置。

尝试在Windows CE上设计不同分辨率和宽高比的表单

你可以(而且应该)做的另一件事是使用WPF,这是为windows构建用户界面的新方法。

我刚刚找到了一个解决方法。在Windows 7的显示设置中,我将文本大小从125%更改为100%。所有东西都变小了,但位置和尺寸都很精确。还在想它是怎么工作的!!