2012-04-12 79 views
3

我想爲窗體上的所有ListViewItems分配相同的ContextMenuStrip。這些ListViewItems是動態創建的。有沒有辦法將一個ContextMenuStrip分配給ListViewItem?

不幸的是,似乎ListViewItems沒有可以分配給(當然,ListView本身)的ContextMenuStrip屬性。

我需要將ContextMenuStrip分配給ListView,然後根據ListView的當前選擇的項目,從那裏繼續嗎?

回答

5
private void listView1_MouseDown(object sender, MouseEventArgs e) 
{ 
    if (e.Button == MouseButtons.Right) 
    { 
     var hitTestInfo = listView1.HitTest(e.X, e.Y); 
     if (hitTestInfo.Item != null) 
     { 
      var loc = e.Location; 
      loc.Offset(listView1.Location); 

      // Adjust context menu (or it's contents) based on hitTestInfo details 
      this.contextMenuStrip2.Show(this, loc); 
     } 
    } 
} 
+0

謝謝大家分享! – zionpi 2013-06-06 02:59:58

相關問題