2013-02-26 73 views
2

如何使用該工具條附着在C#.NET 3.5的是工具條的itemselect事件控制的財產?上下文菜單itemselect事件

picArray[n].ContextMenuStrip = new ContextMenuStrip(); 
ToolStripItem Schedule = picArray[n].ContextMenuStrip.Items.Add("Schedule"); 
picArray[n].ContextMenuStrip.Items.Add("Schedule"); 
picArray[n].ContextMenuStrip.ItemClicked += (sender, e) => 
      {         
      panel1.Show();       
      if (e.ClickedItem == Schedule) 
       { 
       //Here I want to use property of that picturebox on which right 
       //click is done 
       } 
+1

我只是有一個問題......爲什麼你爲每個控件創建一個新的ContextMenuStrip?你可以將同一個關聯到多個控件... – 2013-02-26 08:20:35

+0

@Adriano:我有4個圖片框4個設備所有圖片框名稱都給出了ipaddress字符串的相應device.now通過右擊一個picturebox我想訪問該設備,併爲我將需要存儲picArray.Name的IP地址。 – Kevan 2013-02-26 08:29:03

+0

您可以創建一個ContextMenuStrip並將其分配給它們全部。 SourceControl屬性將始終保存生成ItemClicked事件的控件。 – 2013-02-26 08:30:56

回答

2

你可以嘗試這樣的:

var contextMenuStrip = (ContextMenuStrip) e.ClickedItem.GetCurrentParent(); 
var pictureBox = (PictureBox) contextMenuStrip.SourceControl; 
pictureBox. //here you can access it. 

此代碼不檢查的轉換都是有效的。

+0

謝謝老兄這是我想要的! – Kevan 2013-02-26 08:22:04

相關問題