无论如何我可以在webview中点击超链接点击我的c#中的超链接值吗?我正在使用WebView..NavigateToString()来生成内容?
答案 0 :(得分:5)
您可以使用自己的一些Javascript调用InvokeScript
,以便在用户离开您的网页时设置一个监听器。这看起来像C#中的以下内容:
var navigationListenerString = @"
(function() {
function leavingPage() {
window.external.notify("LEAVING PAGE");
}
window.onbeforeunload = leavingPage;
})()";
webView.InvokeScript("eval", new string[] { navigationListenerString });
然后,您可以使用ScriptNotify
侦听您的特定消息,以确定该页面正在卸载并且用户正在离开。遗憾的是,您无法检测用户的去向。此外,如果超链接在新窗口中打开并且webview未卸载,则无法检测到。
答案 1 :(得分:1)
由于Windows 8中的WebView不支持像Silverlight WebBrowser控件这样的Navigating()事件,因此无法获取超链接或取消导航。
但是由于你正在使用NavigateToString()方法,你可以编写一些手动的javascript代码,并在WebView.ScriptNotify()事件的帮助下实现相同的功能。