語言

MenuItem.Popup 活動

定義

發生在菜單項目清單顯示之前。

public:
 event EventHandler ^ Popup;
public event EventHandler Popup;
member this.Popup : EventHandler 
Public Custom Event Popup As EventHandler 

事件類型

範例

以下程式碼範例示範如何利用 Popup 事件判斷在顯示選單前,是否 MenuItem 啟用支援切割、複製與刪除操作的物件。 範例判斷表單上的一個控制項是否啟用、具備輸入焦點,且在啟用textBox1物件前是否TextBoxMenuItem已選取文字。 此範例要求創建三個 MenuItem 物件,分別命名為 menuCut、 menuCopy,且 menuDelete 已被建立。

private:
   void PopupMyMenu( Object^ /*sender*/, System::EventArgs^ /*e*/ )
   {
      if ( !textBox1->Enabled || !textBox1->Focused || textBox1->SelectedText->Length == 0 )
      {
         menuCut->Enabled = false;
         menuCopy->Enabled = false;
         menuDelete->Enabled = false;
      }
      else
      {
         menuCut->Enabled = true;
         menuCopy->Enabled = true;
         menuDelete->Enabled = true;
      }
   }
private void PopupMyMenu(object sender, System.EventArgs e)
{
   if (!textBox1.Enabled || !textBox1.Focused ||
      textBox1.SelectedText.Length == 0)
   {
      menuCut.Enabled = false;
      menuCopy.Enabled = false;
      menuDelete.Enabled = false;
   }
   else
   {
      menuCut.Enabled = true;
      menuCopy.Enabled = true;
      menuDelete.Enabled = true;
   }
}
Private Sub PopupMyMenu(ByVal sender As Object, ByVal e As System.EventArgs) Handles menuEdit.Popup
   If textBox1.Enabled = False OrElse textBox1.Focused = False OrElse textBox1.SelectedText.Length = 0 Then
      menuCut.Enabled = False
      menuCopy.Enabled = False
      menuDelete.Enabled = False
   Else
      menuCut.Enabled = True
      menuCopy.Enabled = True
      menuDelete.Enabled = True
   End If
End Sub

備註

此事件僅在選單項目有子選單項目可顯示時發生。 你可以使用這個事件處理器,根據應用程式的狀態新增、移除、啟用、停用、勾選或取消選單項目,在它們顯示前。 如需處理事件的詳細資訊,請參閱 處理和引發事件。

適用於