Visual Studio 2008 Windows 窗体设计器如何兼容 QVGA 和 VGA?

Posted

技术标签:

【中文标题】Visual Studio 2008 Windows 窗体设计器如何兼容 QVGA 和 VGA?【英文标题】:How is Visual Studio 2008 Windows Forms Designer both QVGA and VGA Compatible? 【发布时间】:2010-11-19 01:30:35 【问题描述】:

在 Visual Studio 2008 中使用智能设备项目时,如果我使用窗口窗体设计器将控件添加到窗体,那么当程序实际运行时,无论设备是否具有QVGA 或 VGA 屏幕。但是,如果我在我的代码中手动将控件添加到表单中而不使用设计器,那么我需要在运行时让我的代码检查设备是否具有 VGA 屏幕或 QVGA 屏幕。如果是 VGA 屏幕,我必须将手动添加的每个控件的 x、y、宽度和高度乘以 2。为什么只需要在不使用设计器的情况下添加控件?

我刚刚在第一个答案下方添加了评论。

【问题讨论】:

【参考方案1】:

由于designer.cs中的这些属性,在设计时添加的控件在首次绘制时会自动缩放:

this.AutoScaleDimensions = new System.Drawing.SizeF(96F, 96F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Dpi;

当您在运行时动态添加控件时,您需要执行自己的缩放。它并不理想,但它就是它的工作方式。

【讨论】:

我还是不明白。设计者添加的控件也是在运行时动态添加的,只是生成的代码。当您同时设计器添加控件和手动添加控件时,这尤其令人困惑,因为您在此处发布的代码仍然存在。

以上是关于Visual Studio 2008 Windows 窗体设计器如何兼容 QVGA 和 VGA?的主要内容,如果未能解决你的问题,请参考以下文章

将 C++ 项目从 Visual Studio 2008 转换为 Visual Studio 2010

无法再使用 Visual Studio 2008 连接到 Visual Studio Team Services

Visual Studio 2012 未能检测到 Visual Studio 2008 构建工具

visual studio 2008如何引用dll

Visual Studio 2010 显示旧的 Visual Studio 2008“添加引用”对话框

如何在 Visual Studio 2010 中使用 Visual Studio 2008 创建的 DLL?