是否可以设置表格的最大宽度但是最大高度不受限制?

时间:2012-11-23 10:25:53

标签: c# winforms

出于某种原因,如果将Form.MaximumSize的宽度和高度都设置为零,它将允许您具有不受限制的窗口大小,但是如果要设置限制,则必须同时对宽度和高度进行操作同时。我想要一个固定的宽度但没有高度限制。

    // No Limits
    this.MaximumSize = new Size(0,0);

    // Form Height will be stuck at 0
    int ArbitraryWidth = 200;
    this.MaximumSize = new Size(ArbitraryWidth, 0);

3 个答案:

答案 0 :(得分:19)

使用INT_MAX,因为它可以用Size代表理论上的限制:

//Max width 200, unlimited height
this.MaximumSize = new Size(200, int.MaxValue);

答案 1 :(得分:4)

我知道这个问题已经有几年了但是我遇到了同样的问题,我所做的就是将其中一个参数设置为屏幕的分辨率,假设表单的大小不能超过屏幕的大小

this.MaximumSize = new Size(200, Screen.PrimaryScreen.Bounds.Height);

希望这有助于某人。

答案 2 :(得分:1)

  

是否可以为表单设置最大宽度但是保留   最大高度不受限制?

不是真的。您可以按如下方式模拟它:

    private void Form1_Resize(object sender, EventArgs e)
    {
        SetMaximumWidth();
    }

    private void Form1_Load(object sender, EventArgs e)
    {
        SetMaximumWidth();
    }

    private void SetMaximumWidth()
    {
        if (Width > 200)
            Width = 200;
    }