我为小型企业创建了一个应用程序.办公室的一些员工无法正确查看表格.原因是他们的DPI设置设置为96dpi以上.有人知道控制这个的方法吗?
对于有winforms应用程序经验的所有人,如何控制表单布局以使DPI不影响应用程序的外观?
我有一个WinForm应用程序,它承载了许多图像.当我将应用程序放在DPI为120的Win7机器上时,它完全破坏了表单的外观.有没有办法禁用我的表单缩放?
我知道这是不建议的事情,DPI应该是无缝的并由操作系统处理.但是当谈到皮肤应用程序时,图像不能很好地扩展.我没有为所有DPI变体创建图像的奢侈,所以请不要建议作为答案.
我有一个Windows窗体,包含3个文件:
AbcFrm.cs
AbcFrm.Designer.cs
AbcFrm.resx
每当我对datagridview的任何属性进行一些更改或添加新事件时,控件的大小会向右侧和底部变大,并导致某些控件超出范围.
我在执行次要属性更改之前和之后比较了.Designer.cs文件(例如,将datagridview的tabStop属性值从true更改为false),并发现在.Designer.cs文件中自动添加/更改了一些行/属性:
.Size价值变化.Location价值变化.Padding价值变化.AutoScaleDimensions变得更大.ClientSize变得更大编辑
我意识到当我将分辨率从150%更改为125%并重新打开应用程序时,控件又回到正确的位置,因为窗体现在具有更大的缩放尺寸.我的问题与这个问题类似
原因是代码可能已在具有不同分辨率的计算机中编辑.然而,解决方案并不令人满意,因为它不能解决问题,只能找出原因.
我该如何防止这种情况发生?我正在使用Visual Studio 2010,我的操作系统是Windows 10.
以某种方式通过Visual Studio创建的表单和控件,设计器具有很强的自我扩展能力,具体取决于Windows的当前DPI /字体大小.我的UI的一部分是一个标签控件,其中包含动态页面和标签/输入,具体取决于用户的选择.创建这些时,它们使用的硬编码尺寸适合96 DPI.
在.Net中是否有自动方式来获取这些生成的控件并执行与设计器生成的控件相同的调整大小?我想避免自己扩展控件,因为这是旧代码不易维护.