连接额外的显示监视器时,Winform窗口显示和行为会发生变化

时间:2018-12-14 06:30:21

标签: c# winforms

编辑以解决“重复项”: 这个问题是关于插入和拔出额外显示器时显示的差异。 “重复”是指DPI在监视器中更改,或者应用程序在其他监视器上运行。尽管相关,但情况有所不同。 我要具体地询问该应用何时在相同 PC上运行

我通常在连接更大显示屏的笔记本上工作。分辨率是笔记本电脑:150%1920x1080和额外100%1280x1024。

最近,我开发了一个使用多种表单的Winform应用程序。它运作良好。但是,第二天进行演示时,我断开了额外的显示屏并拿了笔记本。当我运行该应用程序时,窗体的尺寸完全错误。有时候,由于表格变小,所以在某个地方的按钮消失了,我不得不手动将它们变大才能看到按钮。

即使是陌生人,我也在使用一些dataGridViews(内部带有复选框),它们工作得很好。但是,当多余的显示器断开连接时,当我单击一个复选框时,行为在开始时都是错误的。

有人遇到这类问题吗?是什么原因造成的?以及如何解决?

我重复一遍,当在

中调用多种形式时会发生这种情况
module_position

1 个答案:

答案 0 :(得分:0)

我认为这可能是我最近遇到的同一问题。就我而言,问题实际上是由于在编译应用程序时Visual Studio在何处运行。如果我在不是不是 100%DPI的监视器上运行VS,那么生成的应用程序将在其他DPI上显得混乱。但是,当我只在100%DPI监视器上使用VS来编译应用程序时,该应用程序在其他DPI(例如150%和200%)上看起来会很好。请注意,如果您尝试在诸如175%的某些DPI上运行该应用程序,您可能仍然会遇到问题,而且我认为解决这一问题没有任何好的方法。