在Windows 7中禁用“关闭窗口”选项

问题描述

| 我的应用程序是在带有3.5框架的VB.net中。我想在进行一些处理时禁用应用程序主窗体上的关闭按钮(\“ [X] \”)。 我已经通过重写表格的\“ ReadOnly属性CreateParams()\”实现了禁用。这样做很好,因为窗体上的控制按钮和任务栏中的右键单击关闭选项都将它们显示为已禁用。 这可以满足我在Windows XP而不是Windows 7上的需要。在Windows 7中,右键单击任务栏上的应用程序图标将显示一个菜单...,其中有一个新的“关闭窗口”选项。 在原始菜单中,关闭仍会显示为已禁用(此旧菜单已隐藏,但可以通过按住Shift键并右键单击TaskBar中的应用程序图标来显示)。现在,我还需要禁用此“关闭窗口”选项,并且仅针对我的应用程序。 是否有以编程方式执行此操作的方法?     

解决方法

采用:
Private Sub MyForm_FormClosing(ByVal sender As Object,ByVal e As System.Windows.Forms.FormClosingEventArgs) Handles Me.FormClosing
    e.Cancel = True
End Sub
编辑: 是的,您应该检查
e.CloseReason
属性。发送者的类型是另一个参数,您可以键入此参数来决定是否取消关闭请求。