Webkit.net打开新的选项卡和窗口

本文关键字:选项 窗口 net Webkit | 更新日期: 2023-09-27 18:25:10

我可以通过使用webkit.net的上下文菜单:轻松做到这一点

private void browser1_NewWindowRequest(object sender, WebKit.NewWindowRequestEventArgs e)
{
    ((Form1)MdiParent).AddTab(e.Url.ToString());
}

然而,newWindowrequesteventargs e对于提示新选项卡/窗口的javascript事件返回null,我可以通过右键单击然后单击"打开链接"来修复它,这实际上会在新选项卡或窗口中打开它(就像单击常规的"在新窗口中打开"一样)。以下内容对于仅提示新窗口的超链接的按钮仍然不起作用

private void browser1_NewWindowRequest(object sender, WebKit.NewWindowRequestEventArgs e)
{
    if (e.Url.ToString() != null)
    {
        ((Form1)MdiParent).AddTab(e.Url.ToString());
    }
    else
    {
        //I just need to stimulate the mouse right clicking and then left clicking for this to work but this still does not work for buttons, how can I get the link from the element the mouse is over?
    }
}

假设这只适用于链接而不适用于按钮,所以我一直在努力寻找控件的本地上下文菜单中的"打开链接"菜单项所做的方法。我已经浏览了webkit.net的源代码,但我找不到任何东西,有人能帮我吗?我想添加webkitbrowser1.OpenLink();到将执行相同操作的控件,单击"打开链接"菜单项

Webkit.net打开新的选项卡和窗口

我已经解决了上下文菜单,在newwindowrequest事件中,您只需放入e.Url.Tostring()即可获得当前Url,并使用自己的添加选项卡或窗口方法导航到它。仍然不确定javascript