WPF | WindowFormHost | Web浏览器|上下文菜单

时间:2013-01-10 20:24:16

标签: c# wpf windowsformhost

我正在尝试编写一个应用程序,用户可以在浏览器中突出显示文本并通过上下文菜单标记内容。我有一个WPF应用程序,我使用WindowsFormHost与Windows窗体WebBrowser,所以我可以有一个自定义上下文菜单。我的问题是我无法触发Click事件。

我做错了吗?

public partial class MainWindow : Window
{
    public MainWindow()
    {
        InitalizeComponent();            
        System.Windows.Forms.WebBrowser Browser = new System.Windows.Forms.WebBrowser();              
        Browser.IsWebBrowserContextMenuEnabled = false;
        System.Windows.Forms.ContextMenu BrowserContextMenu = new System.Windows.Forms.ContextMenu();       
        System.Windows.Forms.MenuItem MenuItem = new System.Windows.Forms.MenuItem();
        MenuItem.Text = "Take Action";             
        MenuItem.Click += new System.EventHandler(this.MenuItem_Click);
        BrowserContextMenu.MenuItems.Add(MenuItem);
        Browser.ContextMenu = BrowserContextMenu;
        WindowsFormsHost.Child(Browser);               
    }

    //THIS DOESN'T FIRE!?!?!?
    private void MenuItem_Click(object sender, EventArgs e)
    {
        MessageBox.Show("Click!");
    }
}

1 个答案:

答案 0 :(得分:0)

将所有内容移至Main_Loaded并运行