Hejsan Fungerar för mig i alla fall. Hur ser din kod ut exakt? Iofs ändrade jag lite i din kod, typ lade till void som returvärde på meListViewContextMenu() och anropar funktionen före jag tilldelar kontextmenyn. Hej Alexander Ojsan, blev lite fel där, självklart ska konstruktorn hetta <b>myContextMenu()</b> och inte <b>meListViewContextMenu()</b>.Click händelse på en MenuItem körs aldrig!
Har ett problem, Click händelsen körs aldrig på min ContextMenu. Har är koden för myContextMenu
using System;
using System.Windows.Forms;
namespace ME
{
class myContextMenu : ContextMenu
{
public meListViewContextMenu()
{
MenuItem x = new MenuItem("Texten");
x.Click += new EventHandler(this.xEvent);
this.MenuItems.Add(x);
}
private void xEvent(object sender, EventArgs e)
{
MenuItem x = (MenuItem)sender;
MessageBox.Show(x.Text);
}
}
}
myContextMenu skapar jag sen en instans av och lägger den på en ListView's ContextMenu
myContextMenu myMenu = new myContextMenu();
listview1.ContextMenu = myMenu;
Fungerar fint, menyn visas men som jag sa i början så körs aldrig Click händelsen när jag klickar på ett meny inlägg :(
Ändrar jag .Click till .Select så körs händelsen. Men det är Click jag vill ha.
Någon som har idéer på varför det är såhär?
Sv: Click händelse på en MenuItem körs aldrig!
Sv: Click händelse på en MenuItem körs aldrig!
Sv: Click händelse på en MenuItem körs aldrig!
Jag vet inte om du skrevet fel någonstans eller men jag skulle föreslår att du byter ut din "meListViewContextMenu()" metod till en konstruktor för objektet. Alltså att du istället skapar dina MenuItem i :
public myContextMenu ()
{
MenuItem x = new MenuItem("Texten");
x.Click += new EventHandler(this.xEvent);
this.MenuItems.Add(x);
}
För då kommer för då kommer denna koden att köras när du använder "new" komadot här:
myContextMenu myMenu = new myContextMenu();Sv:Click händelse på en MenuItem körs aldrig!
Men hitta felet, det var en "myMenu.Dispose()" som var felplacerad =P
Tack för all er hjälp :)