XP 和 7 之间的表单大小不同

发布于 2024-08-27 23:42:06 字数 350 浏览 4 评论 0原文

我正在我的 XP 开发机器上使用 Visual C# Express 2008 开发一个 C# WinForms 应用程序。

我将表单设置为我喜欢的大小,并在设计器上设置了宽度和高度,一切看起来都不错。我还将这些尺寸设置为 MaximumSize 属性。

将应用程序部署到另一台 XP 计算机上,该应用程序看起来就像在我的开发人员上一样。

然而,在Win7机器上测试应用程序时,表单同时应用了水平和垂直滚动条。我认为这是由于 Win7 确定的窗体的非客户端大小发生了变化。我可以调整窗口大小,但我希望它首先能够正确显示。

所以,我的问题是:跨操作系统正确维护表单大小客户端区域的最佳方法是什么?

谢谢大家。

I am developing a C# WinForms app on my XP dev machine with Visual C# Express 2008.

I set the form to have a size of my liking with Width and Height on the designer and all looks good. I also set these dimensions to the MaximumSize property.

Deploying the app to another XP machine, and the app looks like it does on my dev.

However, in testing the app on a Win7 machine, the form has both horizontal and vertical scrollbars applied. I assume that this is due to the changed non-client size of the form, as determined by Win7. I can resize the window, but I would like it to be displayed correctly to begin with.

So, my question is: What is the best way to correctly maintain a form size client area across OS'es?

Thanks all.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

烟酒忠诚 2024-09-03 23:42:06

您应该使用 ClientSize 属性 - 如果您在代码中设置它,它不会在不同操作系统之间更改。

来自 MSDN:

控件的客户区是控件的边界,减去滚动条、边框、标题栏和菜单等非客户元素。

You should make use of the ClientSize property - if you set it in code, it will not change across OS'es.

From MSDN:

The client area of a control is the bounds of the control, minus the nonclient elements such as scroll bars, borders, title bars, and menus.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文