c # - Sådan svarer du på et ContextMenuStrip-element klik

Indlæg af Hanne Mølgaard Plasc

Problem



I øjeblikket har jeg følgende kode:


ContextMenuStrip contexMenuuu = new ContextMenuStrip();

contexMenuuu.Items.Add("Edit ");
contexMenuuu.Items.Add("Delete " );
contexMenuuu.Show();


Hvordan kan jeg tilføje en begivenhed, der skal behandles, når et element bliver klikket?

Bedste reference


Dette kan gøres ved hjælp af følgende kode:


ContextMenuStrip contexMenu = new ContextMenuStrip();

contexMenu.Items.Add("Edit ");
contexMenu.Items.Add("Delete ");
contexMenu.Show();
contexMenu.ItemClicked += new ToolStripItemClickedEventHandler(
    contexMenu\_ItemClicked);

// ...

void contexMenu\_ItemClicked(object sender, ToolStripItemClickedEventArgs e) {
    ToolStripItem item = e.ClickedItem;
    // your code here
}


Eller alternativt:


// ...

ToolStripItem item = contexMenu.Items.Add("Edit ");
item.Click += new EventHandler(item\_Click);

// ...

void item\_Click(object sender, EventArgs e) {
    ToolStripItem clickedItem = sender as ToolStripItem;
    // your code here
}

Andre referencer 1


Tilføj metode returnerer ToolStripItem. Så du kan tilføje håndtag til klikhændelse [5] [6]


        var item = contexMenuuu.Items.Add("Edit ");
        item.Click += methodToBeInvoked;