Xulrunner强制链接在一个窗口中打开

时间:2014-01-07 06:57:01

标签: c# xulrunner

我有一个C#程序,使用xulrunner嵌入到表单中。但是当我点击带有target =“_ blank”属性的链接时,它会为我打开一个新窗口。我需要的是在现有的浏览器窗口中强制打开所有这些链接。一旦我无法在网上找到有关此主题的任何信息,你能帮我解决这个问题。谢谢你的帮助!

1 个答案:

答案 0 :(得分:0)

geckoWebBrowser1.DocumentCompleted += LoadingFinished;添加到表单加载

比使用它;

   private void LoadingFinished(object sender, EventArgs args)
    {
        if (geckoWebBrowser1.Document != null && geckoWebBrowser1.Document.Body != null)
        {
            foreach (var anchor in geckoWebBrowser1.Document.GetElementsByTagName("a"))
            {
                var targetAttributeValue = anchor.GetAttribute("target");
                if (!String.IsNullOrEmpty(targetAttributeValue))
                {
                    Debug.WriteLine(anchor.GetAttribute("href") as string + " changed href from " + targetAttributeValue as string + " to _self");
                    anchor.SetAttribute("target", "_self");
                }
            }
        }
    }

这将_blank替换为_self。它会有所帮助。