如何在一个按钮中创建最大化和正常的窗口状态

时间:2016-07-25 04:42:57

标签: c# operating-system window maximize-window windowstate

I want a simple way to maximize and normal windowstate all in one button (click me for image)

方法(代码)c#编码 -

    int maxornot;

    private void MaxButton_Click(object sender, EventArgs e)
    {

        this.WindowState = FormWindowState.Maximized;
        maxornot = 1;

        if (WindowState == FormWindowState.Minimized);
        {
            maxornot = 0;
        }

        if (maxornot == 0);
        {

        }

    }

如果此方法毫无意义,并且有一种方法可以简化代码,那么请在下面留下代码。

p.s我没有考虑如何使这种方法起作用,因为我只是头疼:P

1 个答案:

答案 0 :(得分:0)

根据您在代码示例中显示的内容,您需要一个按钮从FormWindowState.Normal切换到FormWindowState.Maximized,另一种方式也是如此。

现在,而不是在单击开始时将表单的FormWindowState设置为最大化甚至您应该首先检查窗口的当前状态:

if(this.WindowState == FormWindowState.Maximized)
    ... do something

FormWindowState有3种不同的状态:NormalMinimizedMaximized。在您的情况下,您不需要Minimized。您现在要做的就是在方法中切换正常和最大化,具体取决于当前活动的内容:

if(this.WindowState == FormWindowState.Maximized)
    this.WindowState = FormWindowState.Normal;
else
    this.WindowState = FormWindowState.Maximized;

在click事件方法中,您只需要这4行代码。

这个简单的if-else也可以转换为三元:

this.WindowState = this.WindowState == FormWindowState.Maximized ? FormWindowState.Normal : FormWindowState.Maximized;