ContextMenu.Popup Událost
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Nastane před zobrazením místní nabídky.
public:
event EventHandler ^ Popup;
public event EventHandler Popup;
member this.Popup : EventHandler
Public Custom Event Popup As EventHandler
Event Type
Příklady
Následující příklad kódu vytvoří obslužnou rutinu události pro Popup událost události ContextMenu. Kód v obslužné rutině události určuje, který ze dvou ovládacích prvků pojmenovaný PictureBoxpictureBox1 a pojmenovaný TextBoxtextBox1 je ovládací prvek zobrazující místní nabídku. V závislosti na tom, který ovládací prvek způsobil ContextMenu zobrazení jeho místní nabídky, ovládací prvek přidá příslušné MenuItem objekty do objektu ContextMenu. Tento příklad vyžaduje, abyste měli instanci ContextMenu třídy s názvem contextMenu1, definovanou ve formuláři. Tento příklad také vyžaduje, abyste měli TextBox formulář a PictureBox přidali ho do formuláře a aby ContextMenu vlastnost těchto ovládacích prvků byla nastavena na contextMenu1hodnotu .
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
Poznámky
Tuto událost můžete použít k inicializaci MenuItem objektů před jejich zobrazením. Pokud například používáte ContextMenu ovládací prvky pro tři TextBox ovládací prvky a chcete zakázat určité položky nabídky v ContextMenu závislosti na tom, která TextBox místní nabídka zobrazuje, můžete pro tuto událost vytvořit obslužnou rutinu události. Vlastnost můžete použít SourceControl k určení, která TextBox se chystá zobrazit ContextMenu a zakázat příslušné MenuItem objekty.
Další informace o zpracování událostí naleznete v tématu Zpracování a vyvolávání událostí.