C# Windows10,一个表单';当我打开表单时,s的宽度大小似乎保持了1.25倍大

C# Windows10,一个表单';当我打开表单时,s的宽度大小似乎保持了1.25倍大,c#,forms,winforms,C#,Forms,Winforms,我想恢复表单的大小,我使用了以下代码 我从中得到了一个想法 我发现在一些机器上(特别是Windows10),当我重新打开这个特定的表单时,表单的宽度会增加一倍 我猜这可能是屏幕分辨率的缩放问题,但我无法重现 因为我没有计算,而是直接存储表单的大小,所以我不知道在哪里查找 我将使用一个远程助手,试图找出它发生的原因。我将分享我的发现 private void Form\u加载(对象发送方,事件参数e) { 这是。RestoreWindowPosition(); } 私有void SaveWindo

我想恢复表单的大小,我使用了以下代码

我从中得到了一个想法

我发现在一些机器上(特别是Windows10),当我重新打开这个特定的表单时,表单的宽度会增加一倍

我猜这可能是屏幕分辨率的缩放问题,但我无法重现

因为我没有计算,而是直接存储表单的大小,所以我不知道在哪里查找

我将使用一个远程助手,试图找出它发生的原因。我将分享我的发现

private void Form\u加载(对象发送方,事件参数e)
{
这是。RestoreWindowPosition();
}
私有void SaveWindowPosition()
{
Properties.Settings.Default.ReviewFormState=this.WindowState;
if(this.WindowState==FormWindowState.Normal)
{
Properties.Settings.Default.ReviewFormLocation=此.Location;
Properties.Settings.Default.ReviewFormSize=this.Size;
}
其他的
{
Properties.Settings.Default.ReviewFormLocation=this.RestoreBounds.Location;
Properties.Settings.Default.ReviewFormSize=this.RestoreBounds.Size;
}
Properties.Settings.Default.ReviewFormHasSetDefaults=true;
Properties.Settings.Default.Save();
}
私有作废表单\表单关闭(对象发送者,表单关闭者)
{
这个.SaveWindowPosition();
}
私有void RestoreWindowPosition()
{
if(Properties.Settings.Default.ReviewFormHasSetDefaults)
{
this.WindowState=Properties.Settings.Default.ReviewFormState;
this.Location=Properties.Settings.Default.ReviewFormLocation;
this.Size=Properties.Settings.Default.ReviewFormSize;
}
}
远程会话之后 如前所述,我完成了一个远程会话。我发现这是因为规模问题。但是,这看起来还是很奇怪。我检查了[显示设置-比例和布局]菜单,结果是125%。然后我打开表格并重复。我发现表单的大小正在增长。我想第一次是1.25倍。我所做的是我改变了100%的比例,然后做同样的事情打开并重复。这一次,我什么也没找到;这张表大小一样

我的中间步骤结论是,我需要保存表单的纯尺寸。我会按比例翻译。然后我想,我可以得到表格的真实尺寸。我真的不确定我是否会尝试分享我的发现,让别人在循环中

@吉米和路易斯·戈 我希望有一天我也能帮助你。谢谢你的帮助。

吉米:


如果没有,请使您的应用程序成为DpiAware。从这里开始:,然后查看app.config设置并(考虑并测试
PerMonitorV2
设置)。考虑表单的
自动缩放模式
。查看
Dpi
Font
之间的区别


如果您有win10环境,请尝试调整“显示设置”->“更改文本、应用程序的大小”。它可能会重现您的问题。如果没有,请将您的应用程序设置为DpiAware。从这里开始:,然后查看app.config设置并(考虑并测试
PerMonitorV2
设置)。考虑表单的
自动缩放模式
。查看
Dpi
Font
之间的区别。