如何设置表单可见区域的大小,减去标题和边框?

Moc*_*cco 18 c# forms dimension visual-studio winforms

我想将我的表格设置为300*300,不包括标题和边框.

如果我使用Size属性,它确实包含这些值.

有什么方法可以做到吗?

Yet*_*tti 30

您有两种选择,如下所示:

  • 要从表单中删除标题和边框,请禁用表单的FormBorderStyle属性.

  • 使用ClientSize属性设置窗体的内部,如下所示:

    this.ClientSize = new Size(300, 300);
    
    Run Code Online (Sandbox Code Playgroud)


dan*_*n78 8

为什么不只考虑边框和标题栏的大小?

int BorderWidth = (this.Width – this.ClientSize.Width) /2;
int TitlebarHeight = this.Height – this.ClientSize.Height – 2 * BorderWidth;
Run Code Online (Sandbox Code Playgroud)

我在这里找到了公式.


小智 5

有一种解决方法可以通过设计器工具设置适当的大小:1.将FormBorderSize设置为"None".2.设置首选尺寸(例如"300; 300").3.将FormBorderSize设置为首选边框(其他所需空间将自动添加到Size属性).