如何隐藏Form而不是关闭它

gbk*_*gbk 3 .net c# 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();
        }
    }
Run Code Online (Sandbox Code Playgroud)

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

dot*_*NET 14

FormClosing而不是FormClosed.在那里你可以做到e.Cancel = true;实现你所需要的.问题是表单在事件发生时已经关闭FormClosed,所以Hide()不会有任何好处,如果你尝试使用FormClosed事件,将来也无法使用这个对象.

  • 谢谢 - 现在它的工作 - 在关闭过程中使用`FormClosing` - 在关闭过程中而不是`FormClosed` - 注意到 (2认同)