c# - 如何隐藏窗体而不是关闭它

标签 c# .net winforms

<分区>

尝试隐藏表单而不是关闭它,使用

    private void Playlist_FormClosed(object sender, FormClosedEventArgs e)
    {
        if (e.CloseReason == CloseReason.FormOwnerClosing) //if closed by aplication
        {
            this.Close();
        }
        if (e.CloseReason == CloseReason.UserClosing) //if closed by user
        {
            this.Hide();
        }
    }

但如果用户点击关闭,它仍然会关闭它。

最佳答案

使用 FormClosing 而不是 FormClosed。您可以在那里执行 e.Cancel = true; 来实现您的需要。问题是当 FormClosed 事件发生时表单已经Closed,所以 Hide() 不会有任何好处,你会赢如果您在 FormClosed 事件中尝试,将来就可以使用该对象。

关于c# - 如何隐藏窗体而不是关闭它,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18922067/

相关文章:

c# - 在任务中返回 true 或 false 的异步方法

c# - 使用 Entity Framework 处理自定义字段

c# - 如何在 Bootstrap 类仍在运行时关闭应用程序?

.net - WPF - 绑定(bind)到菜单图标

c# - 如何在工具提示中自动换行

c# - 摆脱 C# datagridview 行中的蓝色背景

c# - Blazor:降低/消除图表的动画速度

c# - 为什么 WebRequest 总是在第一个请求上超时,但从不在任何后续请求上超时

c# - 使用 Entity Framework 的唯一主键

c# - 在 Winforms .NET Core 中使用命令链接