2013-08-01 162 views
1

我有一個WPF(VB)項目,我在其中放置了一個Awesomium瀏覽器控件。我可以瀏覽,並且我可以右鍵單擊它並查看默認的右鍵單擊菜單項。添加新項目到Awesomium(Rigth點擊)上下文菜單

我的目標是在運行時以編程方式向該右鍵單擊上下文菜單中添加新的自定義項目,並將其路由到某個事件以處理邏輯。

據有關awesomium.com網站上的WebControlContextMenu類文檔 - 我限制在2種選擇:

  1. 重新定義一個WebControlContextMenu應用程序資源,利用ContextMenuResourceKey關鍵。

(完全替代默認的上下文菜單,您應該DataContext屬性綁定到PlacementTarget屬性,來訪問Web控件,您可以在以後使用。[!WebViewContext]提供通過LatestContextData更新菜單的狀態項目。)

  1. 將自己的上下文菜單分配給ContextMenu屬性。 (和以前一樣,但在這種情況下,你應該提供自己的顯示環境數據。)

我試圖創建一個基本的文本菜單基本文本菜單,並添加一些項目,但我想不出如何添加這個菜單到現有的Web控件。

我可以發表我的一段代碼,但目前爲止我的代碼都沒有工作。

我從哪裏開始,是否有演示可能有助於更好地理解它。任何可以給我一些想法的代碼都是非常感謝!

回答

1

阿列克謝˚FShevelyov:

我們的團隊提出了以下解決方案來解決這個問題:

Public Sub Test() Handles Browser.ShowContextMenu 
    Dim oArray(2) As MenuItem 
    Dim oMenuItem As New MenuItem 
    oMenuItem.Header = "Who Runs It ?!?" 

    oArray(0) = oMenuItem 

    Dim oMenuItem1 As New MenuItem 
    oMenuItem1.Header = "Brogrammaz" 

    oArray(1) = oMenuItem1 

    Dim oMenuItem2 As New MenuItem 
    oMenuItem2 .Header = "Get Some..." 

    oArray(2) = oMenuItem2 

    Application.Current.Resources.Clear() 
    Application.Current.Resources.Add(WebControl.ContextMenuPageItemsArrayRecourceKey, oArray) 
    Application.Current.Resources.Add(WebControl.ContextMenuInputItemsArrayRecourceKey, oArray) 
End Sub here 
相關問題