Bagikan melalui


ContextMenu.Popup Kejadian

Definisi

Terjadi sebelum menu pintasan ditampilkan.

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

Jenis Acara

Contoh

Contoh kode berikut membuat penanganan aktivitas untuk Popup peristiwa ContextMenu. Kode dalam penanganan aktivitas menentukan mana dari dua kontrol bernama PictureBoxpictureBox1 dan bernama TextBoxtextBox1 adalah kontrol yang menampilkan menu pintasan. Bergantung pada kontrol mana yang menyebabkan ContextMenu menampilkan menu pintasannya, kontrol menambahkan objek yang sesuai MenuItem ke ContextMenu. Contoh ini mengharuskan Anda memiliki instans ContextMenu kelas , bernama contextMenu1, yang ditentukan dalam formulir. Contoh ini juga mengharuskan Anda memiliki TextBox dan PictureBox ditambahkan ke formulir dan bahwa ContextMenu properti kontrol ini diatur ke contextMenu1.

private:
   void MyPopupEventHandler( System::Object^ /*sender*/, System::EventArgs^ /*e*/ )
   {
      // Define the MenuItem objects to display for the TextBox.
      MenuItem^ menuItem1 = gcnew MenuItem( "&Copy" );
      MenuItem^ menuItem2 = gcnew MenuItem( "&Find and Replace" );
      // Define the MenuItem object to display for the PictureBox.
      MenuItem^ menuItem3 = gcnew MenuItem( "C&hange Picture" );
      
      // Clear all previously added MenuItems.
      contextMenu1->MenuItems->Clear();

      if ( contextMenu1->SourceControl == textBox1 )
      {
         
         // Add MenuItems to display for the TextBox.
         contextMenu1->MenuItems->Add( menuItem1 );
         contextMenu1->MenuItems->Add( menuItem2 );
      }
      else if ( contextMenu1->SourceControl == pictureBox1 )
      {
         // Add the MenuItem to display for the PictureBox.
         contextMenu1->MenuItems->Add( menuItem3 );
      }
   }
private void MyPopupEventHandler(System.Object sender, System.EventArgs e)
 {
    // Define the MenuItem objects to display for the TextBox.
    MenuItem menuItem1 = new MenuItem("&Copy");
    MenuItem menuItem2 = new MenuItem("&Find and Replace");
    // Define the MenuItem object to display for the PictureBox.
    MenuItem menuItem3 = new MenuItem("C&hange Picture");

    // Clear all previously added MenuItems.
    contextMenu1.MenuItems.Clear();
 
    if(contextMenu1.SourceControl == textBox1)
    {
       // Add MenuItems to display for the TextBox.
       contextMenu1.MenuItems.Add(menuItem1);
       contextMenu1.MenuItems.Add(menuItem2);
    }
    else if(contextMenu1.SourceControl == pictureBox1)
    {
       // Add the MenuItem to display for the PictureBox.
       contextMenu1.MenuItems.Add(menuItem3);
    }
 }
Private Sub MyPopupEventHandler(sender As System.Object, e As System.EventArgs)
    ' Define the MenuItem objects to display for the TextBox.
    Dim menuItem1 As New MenuItem("&Copy")
    Dim menuItem2 As New MenuItem("&Find and Replace")
    ' Define the MenuItem object to display for the PictureBox.
    Dim menuItem3 As New MenuItem("C&hange Picture")
    
    ' Clear all previously added MenuItems.
    contextMenu1.MenuItems.Clear()
    
    If contextMenu1.SourceControl Is textBox1 Then
        ' Add MenuItems to display for the TextBox.
        contextMenu1.MenuItems.Add(menuItem1)
        contextMenu1.MenuItems.Add(menuItem2)
    ElseIf contextMenu1.SourceControl Is pictureBox1 Then
        ' Add the MenuItem to display for the PictureBox.
        contextMenu1.MenuItems.Add(menuItem3)
    End If
End Sub

Keterangan

Anda dapat menggunakan kejadian ini untuk menginisialisasi MenuItem objek sebelum ditampilkan. Misalnya, jika Anda menggunakan ContextMenu untuk tiga TextBox kontrol dan anda ingin menonaktifkan item menu tertentu di ContextMenu tergantung pada mana yang TextBox menampilkan menu pintasan, Anda dapat membuat penanganan aktivitas untuk kejadian ini. Anda dapat menggunakan SourceControl properti untuk menentukan mana yang TextBox akan menampilkan ContextMenu dan menonaktifkan objek yang sesuai MenuItem .

Untuk informasi selengkapnya tentang menangani peristiwa, lihat Menangani dan Menaikkan Peristiwa.

Berlaku untuk