如何最小化和最大化任务栏的winform?

时间:2014-09-25 07:30:40

标签: c# winforms .net-4.0 taskbar

我有一个Winforms应用程序,我可以通过单击窗口右上角的相应按钮来最小化该应用程序;然后,我可以通过单击此应用程序的任务栏图标来最大化它。

我的问题是,如果窗口最大化,当我再次单击任务栏图标时,它应该最小化,并且它当前没有发生。

如何让这种行为发生?我不想使用NotifyIcon或系统托盘。

3 个答案:

答案 0 :(得分:3)

const int WS_MINIMIZEBOX = 0x20000;
const int CS_DBLCLKS = 0x8;
protected override CreateParams CreateParams
{
    get
    {
        CreateParams cp = base.CreateParams;
        cp.Style |= WS_MINIMIZEBOX;
        cp.ClassStyle |= CS_DBLCLKS;
        return cp;
    }
}

答案 1 :(得分:1)

你也可以没有边框。 需要额外的编码

答案 2 :(得分:-1)

尝试检查LocationChangedMoveRegionChangedResizeResizeBeginResizeEnd,{{1} }事件。可能是这些事件中的某些代码阻止了您描述的行为。

我没有在新的空表格上看到所描述的问题。

更新:我正在使用Window 7 Pro。