2014-11-22 28 views
0

如何程序化地(動態地)在waf-framework-c#C#中創建上下文菜單?如何程序化地(動態地)獲得在waf樹視圖中工作的上下文菜單

更多介紹:我一直在嘗試使用此代碼:

System.Windows.Controls.ContextMenu m = new System.Windows.Controls.ContextMenu(); 
m.Items.Add("Cut"); 
m.Items.Add("Copy"); 
m.Items.Add("Paste");   
m.Visibility = Visibility.Visible; 
m.Margin = new Thickness(0, 0, 0, 0); 

然而沒有什麼顯示出來。該程序也不會崩潰。然後我嘗試這樣的:

grid.Children.Add(m); 

而且我得到了這個錯誤:

'ContextMenu' cannot have a logical or visual parent.

+4

請將您的問題的標題描述爲描述您遇到問題的內容。對於每個人來說,你是C#的新手並且你對某些東西感到疑惑並不重要。您的標題應該以某種方式描述您遇到的具體問題,這種方式將在未來在搜索結果中找到它時對其他人有用。如果我在下個月查找有關在該框架中創建上下文菜單的信息,那麼與我進行搜索時發現「嗨,我是C新手,我想知道」是否與我相關?我想不是。 – 2014-11-22 04:02:07

+0

爲了擴大@KenWhite的評論,當你的問題標題以「嘿,我是C新手,我很想知道」開頭的時候,你會嚴重減少你獲得答案的機會。許多在SO上閒逛的專業程序員認爲這樣的標題很好地表明問題中沒有任何問題會有趣或具有挑戰性,並且會簡單地避免它。 – RenniePet 2014-11-22 05:33:52

回答

0

歡迎的StackOverflow(SO)!

我想你可能需要做的就是將上下文菜單附加到樹視圖。查看樹視圖的可用屬性,並查看是否可以(在設計或運行時)分配上下文菜單作爲樹視圖的屬性。否則,樹視圖會忽略上下文菜單的存在。

我知道在WinForms中,treeview有一個ContextMenu屬性。

0

試試這個:

grid.ContextMenu = m; 

但是你必須有一些兒童在網格,並且只能在控制的上下文菜單將被點擊右鍵出現。