ToolStripDropDown.Closing 事件

定义

ToolStripDropDown 控件即将关闭时发生。

public:
 event System::Windows::Forms::ToolStripDropDownClosingEventHandler ^ Closing;
public event System.Windows.Forms.ToolStripDropDownClosingEventHandler Closing;
public event System.Windows.Forms.ToolStripDropDownClosingEventHandler? Closing;
member this.Closing : System.Windows.Forms.ToolStripDropDownClosingEventHandler 
Public Custom Event Closing As ToolStripDropDownClosingEventHandler 

事件类型

示例

下面的代码示例演示如何通过处理 Closing 事件来有选择地关闭ToolStripDropDown控件

// This method handles the Closing event. The ToolStripDropDown
// control is not allowed to close unless the Done menu item
// is clicked or the Close method is called explicitly.
// The Done menu item is enabled only after both of the other
// menu items have been selected.
private void contextMenuStrip_Closing(
    object sender, 
    ToolStripDropDownClosingEventArgs e)
{
    if (e.CloseReason != ToolStripDropDownCloseReason.CloseCalled)
    {
        if (subItem1ToolStripMenuItem.Checked &&
            subItem2ToolStripMenuItem.Checked &&
            doneToolStripMenuItem.Enabled)
        {
            // Reset the state of menu items.
            subItem1ToolStripMenuItem.Checked = false;
            subItem2ToolStripMenuItem.Checked = false;
            doneToolStripMenuItem.Enabled = false;

            // Allow the ToolStripDropDown to close.
            // Don't cancel the Close operation.
            e.Cancel = false;
        }
        else
        {
            // Cancel the Close operation to keep the menu open.
            e.Cancel = true;
            this.toolStripStatusLabel1.Text = "Close canceled";
        }
    }
}
' This method handles the Closing event. The ToolStripDropDown
' control is not allowed to close unless the Done menu item
' is clicked or the Close method is called explicitly.
' The Done menu item is enabled only after both of the other
' menu items have been selected.
Private Sub contextMenuStrip_Closing(sender As Object, e As ToolStripDropDownClosingEventArgs) Handles contextMenuStrip1.Closing
   If e.CloseReason <> ToolStripDropDownCloseReason.CloseCalled Then
      If subItem1ToolStripMenuItem.Checked AndAlso subItem2ToolStripMenuItem.Checked AndAlso doneToolStripMenuItem.Enabled Then
         ' Reset the state of menu items.
         subItem1ToolStripMenuItem.Checked = False
         subItem2ToolStripMenuItem.Checked = False
         doneToolStripMenuItem.Enabled = False
         
         ' Allow the ToolStripDropDown to close.
         ' Don't cancel the Close operation.
         e.Cancel = False
      Else
         ' Cancel the Close operation to keep the menu open.
         e.Cancel = True
         Me.toolStripStatusLabel1.Text = "Close canceled"
      End If
   End If
 End Sub

注解

有关处理事件的详细信息,请参阅 处理和引发事件

适用于