通过代码在wpf webbrowser控件中的动作href链接

时间:2014-09-01 13:30:20

标签: c# html wpf-controls

我使用wpf webbrowser控件通过WebBrowser.NavigateToString()方法显示手动生成的html代码。在这个html代码中有许多手动链接,如下例所示:

<a href="#marker_1">Go to Mark 1</a> 

当我点击html文档中的这个链接时,浏览器跳转到它。它工作正常。我想要的是通过c#代码跳转到标记。我知道WebBrowser.Document属性是来自Microsoft.mshtml.dll的IHtmlDocument。我通过所有IHtmlAncorElements将它变成了enumarte。我通过名称找到Ancor并将其转发回IHtmlElement。所以我有IHtmlElement对象,但我不知道如何在这个模拟代码中添加链接:

var ancorElement = ((IHtmlDocument)WebBrowser.Document).all.Cast<IHtmlElement>().Where(element => elment is IHtmlAncorElement).FirstOrDefault(element => element.href.equals("#marker_1")); 
if (ancorElement != null) /* so i don't know the right way */ ancorElement.Click() or ancorElement.Action()

所以我希望有人知道通过c#代码运行链接的方法!

祝你好运

丹尼尔

1 个答案:

答案 0 :(得分:0)

                    if (ancorElement != null)
                           WpExample.Navigate("your URL");
这是什么意思?我发现很难理解你的问题,但是使用WPF导航到不同的URL你可以这样做吗?