已最大化为 250x200 像素的错误和明确定义的高度和宽度
没关系,只要您仅在表单构造函数中设置此大小即可。并将 FormBorderStyle 设置为 Fixed ,这样就可以清楚地看到窗口不能调整大小。如果您稍后再执行此操作,例如在 Load 或 Resize 事件中,那么您会令拥有良好高分辨率显示的用户不满意。或者“视网膜”显示器,我们很快就会拥有它们。他们需要提高视频适配器的每英寸点数设置,这样他们仍然可以在没有放大镜的情况下阅读 8 点文本。
这会导致文本以更多像素呈现。这要求您的控件变得更大,它们的大小以像素为单位指定。如果您不让它们增长,那么您将拥有带有大文本的小控件,没有吸引力且不可读。反过来,更大的控件需要它们移动并且您的表单变得更大,以便它仍然适合控件。
这都是自动的,这要归功于表单的 AutoScaleMode 设置。它默认为您所需要的字体。但是,当您将表单强制恢复为其原始设计尺寸时,这将不起作用,它将剪切移动的控件。
除了修改视频 dpi 设置之外,检查您的表单是否仍然在这样的机器上正常工作的一种快速方法是 Load 事件处理程序中的这段测试代码:
protected override void OnLoad(EventArgs e) {
this.Font = new Font(this.Font.FontFamily, this.Font.Size * 125 / 96f);
base.OnLoad(e);
}