2010-09-07 51 views
2

我有一個與樹視圖關聯的contextmenuStrip。如果右鍵單擊,ContextMenuStrip從樹視圖中的項目失去焦點

現在,例如,我有四個節點在樹結構和節點4被選中。

行爲: 的ContextMenuStrip - 當U右擊節點2,該節點被選擇,只要上下文菜單條打開時,焦點返回到節點4

隨着舊組件「上下文菜單「此功能工作正常,即節點2有焦點,直到時間上下文菜單打開。

只要上下文菜單打開,我想選擇節點2。當上下文菜單關閉時,選擇/焦點應返回到節點4。

請諮詢。

感謝和問候 薩米特

回答

1

是,TreeView控件時,而其事件中的一個運行的重點是改變相當片狀。這是區分BeforeXxxx和AfterXxxx事件的一個原因。不幸的是,上下文菜單條顯示得太快。解決方案是通過實施NodeMouseClick事件來自己顯示上下文菜單。像這樣:

private void treeView1_NodeMouseClick(object sender, TreeNodeMouseClickEventArgs e) { 
     if (e.Button == MouseButtons.Right) { 
      treeView1.SelectedNode = e.Node; 
      contextMenuStrip1.Show(treeView1, e.Location); 
     } 
    } 

我以後會把重點放回你身上。實施它沒有多大意義。

+0

感謝您的反饋意見。 – Sumit 2010-09-10 15:31:39

相關問題