Assembly : System.Windows.Forms (dans system.windows.forms.dll)
SyntaxePublic Event Popup As EventHandler
Dim instance As ContextMenu Dim handler As EventHandler AddHandler instance.Popup, handler
public event EventHandler Popup
public: event EventHandler^ Popup { void add (EventHandler^ value); void remove (EventHandler^ value); }
/** @event */ public void add_Popup (EventHandler value) /** @event */ public void remove_Popup (EventHandler value)
JScript prend en charge l'utilisation d'événements mais pas la déclaration de nouveaux événements.
NotesVous pouvez utiliser cet événement pour initialiser les objets MenuItem avant qu'ils soient affichés. Par exemple, si vous utilisez un ContextMenu pour trois contrôles TextBox et vous souhaitez désactiver certains éléments de menu dans ContextMenu en fonction de TextBox qui affiche le menu contextuel, vous pouvez créer un gestionnaire d'événements pour cet événement. Vous pouvez utiliser la propriété SourceControl pour identifier le TextBox qui doit afficher le ContextMenu et désactiver les objets MenuItem appropriés.
Pour plus d'informations sur la gestion des événements, consultez Consommation d'événements.
ExempleL'exemple de code suivant crée un gestionnaire d'événements pour l'événement Popup de ContextMenu. Le code figurant dans le gestionnaire d'événements détermine le contrôle qui affiche le menu contextuel parmi les deux contrôles PictureBox nommé pictureBox1 et TextBox nommé textBox1. En fonction du contrôle à l'origine de l'affichage du menu contextuel de ContextMenu, le contrôle ajoute les objets MenuItem appropriés à ContextMenu. Cet exemple requiert que vous disposiez d'une instance de la classe ContextMenu, appelée contextMenu1, définie dans le formulaire. Cet exemple requiert également que le formulaire comprenne un TextBox et un PictureBox et que la propriété ContextMenu de ces contrôles ait la valeur contextMenu1.
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 'MyPopupEventHandler '
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: 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(Object sender, 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.get_MenuItems().Clear(); if (contextMenu1.get_SourceControl().Equals(textBox1)) { // Add MenuItems to display for the TextBox. contextMenu1.get_MenuItems().Add(menuItem1); contextMenu1.get_MenuItems().Add(menuItem2); } else { if (contextMenu1.get_SourceControl().Equals(pictureBox1)) { // Add the MenuItem to display for the PictureBox. contextMenu1.get_MenuItems().Add(menuItem3); } } } //MyPopupEventHandler
Plates-formesWindows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile pour Pocket PC, Windows Server 2003, Windows XP Édition Media Center, Windows XP Professionnel Édition x64, Windows XP SP2, Windows XP Starter Edition
Le .NET Framework ne prend pas en charge toutes les versions de chaque plate-forme. Pour obtenir la liste des versions prises en charge, consultez Configuration requise.
Informations de version
Outils (masquer)
S'enregistrer
Liste des Membres
Qui est en ligne?
FAQ