C# 如何禁用窗口的所有调整大小的可能性?

C# 如何禁用窗口的所有调整大小的可能性?,c#,resize,window,C#,Resize,Window,我有一行代码禁止所有可能的调整窗口大小的应用程序 this.ResizeMode = ResizeMode.NoResize; 这样,窗口右上角的“最大化”和“最小化”按钮将不会显示,您无法通过双击菜单栏来最大化窗口 我原以为它能工作,但后来我发现双击菜单栏就可以最小化窗口。我很困惑这是可能的。有人回答过这个问题吗?您不能通过双击使窗口最大化,但可以将其最小化?您可以轻松防止最小化我通过调整大小事件检测到更改并将其设置回原始大小 注意:您将看到窗口短暂最小化,然后返回 public parti

我有一行代码禁止所有可能的调整窗口大小的应用程序

this.ResizeMode = ResizeMode.NoResize;
这样,窗口右上角的“最大化”和“最小化”按钮将不会显示,您无法通过双击菜单栏来最大化窗口


我原以为它能工作,但后来我发现双击菜单栏就可以最小化窗口。我很困惑这是可能的。有人回答过这个问题吗?您不能通过双击使窗口最大化,但可以将其最小化?

您可以轻松防止最小化我通过调整大小事件检测到更改并将其设置回原始大小

注意:您将看到窗口短暂最小化,然后返回

public partial class Form1 : Form
{
    public Form1()
    {
        InitializeComponent();
        this.Resize += new EventHandler(Form1_Resize);
    }

    void Form1_Resize(object sender, EventArgs e)
    {
        if (WindowState == FormWindowState.Minimized)
        {
            this.WindowState = FormWindowState.Normal;
        }

    }
}

最小化是指它进入底部的工具栏?最小化和最大化与调整大小不同。这行代码不应该影响最小化和最大化行为。@psoshmo,也许我描述的有点错误,双击工具栏中的“窗口不去”,它只会调整到较小的大小,因为我的标准尺寸已最大化,但在使窗口变小后(这是不允许的)再次双击以使窗口最大化是不可能的。请不要订阅自己的事件,改为重写onresize方法,否则其他内容可能会中断您的代码,或在之前运行。@CarlSixsmith您的评论没有意义。Resize事件是要订阅的。这没有什么问题。请参见我问题的答案-订阅自己的事件而不是覆盖事件会有问题。[我不太习惯C#但是窗体和窗口之间没有区别。我可以使用这段代码吗?但是我喜欢这个想法,如果我可以集成它,我认为它应该可以工作。@FlorinM如果你的应用程序是用WinForms编写的,那么窗口就是窗体。如果你的应用程序是用WPF编写的,那么窗口就不是窗体!!令人困惑。