Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/264.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 升级.NET版本和编辑表单时表单中显示的错误_C#_.net_Winforms_.net 4.0_Windows Forms Designer - Fatal编程技术网

C# 升级.NET版本和编辑表单时表单中显示的错误

C# 升级.NET版本和编辑表单时表单中显示的错误,c#,.net,winforms,.net-4.0,windows-forms-designer,C#,.net,Winforms,.net 4.0,Windows Forms Designer,首先,我最近把我的项目从.NET3.5升级到了4.0。我没有问题 但现在我做了一些更改,结果是表单在所有未安装VisualStudio2010的计算机上显示不好。他们有.NET4.0,否则我无法运行该程序 我只需添加一个按钮,designer就会更改另外两件事: <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyTo

首先,我最近把我的项目从.NET3.5升级到了4.0。我没有问题

但现在我做了一些更改,结果是表单在所有未安装VisualStudio2010的计算机上显示不好。他们有.NET4.0,否则我无法运行该程序

我只需添加一个按钮,designer就会更改另外两件事:

 <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
出现在.Designer.cs InitializeComponent()中


如果我恢复此代码更改,则所有计算机上的窗体显示正常;如果我保留这些窗体,则窗体缺少许多子控件,并且它会像大多数子控件一样滑出屏幕,但仅在没有VS2010的计算机上显示。如何解决此问题以及如何将VS2010安装到计算机上?

这听起来像是一个DPI问题,您的开发PC上的DPI(例如120dpi)与其他PC上的DPI(例如96dpi)不同

如果您不打算在应用程序中支持不同的DPI,那么只需确保在设置为目标DPI分辨率(通常为96dpi)的PC上开发代码即可

如果您希望支持各种DPI分辨率,那么
Form.AutoScaleMode
将是一个良好的开端。StackOverflow还提供了有关DPI问题和解决方案的资源


祝你好运。

你所说的“显示的坏消息”是什么意思:一个错误还是其他什么?@Richard许多控件不可见,就像它们不在可见区域一样。布局有问题,例如窗口大小与窗体大小不同,然后所有靠近窗体底部和右侧的控件都丢失。窗体大小是否已更改?如果是这样的话,可能是工作和不工作截图的时间了?可能是因为您的开发PC上的DPI与其他PC上的DPI不同吗?Thx。非常有趣的是,在.resx文件中,我的版本为2.0.0.0时,一切都正常。只有当我编辑表单,designer将版本更改为4.0.0.0,并添加很少的其他行时,事情才会变得一团糟。现在我将坚持使用2.0.0.0版。
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
    ((System.ComponentModel.ISupportInitialize)(this.splitContainer3)).BeginInit();
    ...
    ((System.ComponentModel.ISupportInitialize)(this.splitContainer3)).EndInit();