我使用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#代码运行链接的方法!
祝你好运
丹尼尔
答案 0 :(得分:0)
if (ancorElement != null)
WpExample.Navigate("your URL");
这是什么意思?我发现很难理解你的问题,但是使用WPF导航到不同的URL你可以这样做吗?