如何在 Windows 8 上的 Web 视图中捕获导航事件?

2023-11-21

我的应用程序中有一个 Webview,我想拦截任何点击并在 IE 中打开链接,而不是在应用程序的 Webview 内。

我只能看到 NavigationFailed 和 LoadingComplete 事件,没有任何关于我可以拦截的“即将导航”事件的信息。


似乎没有任何方法可以捕获任何导航事件。但是,您可以使用 window.external.notify() 拦截在 JavaScript 中调用的脚本事件

假设该页面是您自己托管的,您可以替换

<a href="http://www.lightwoodgames.com">LINK</a>

With

<a href="javascript:window.external.notify('http://www.lightwoodgames.com')">LINK</a>

然后在你的项目中你需要添加

webview.ScriptNotify += webview_ScriptNotify;
webview.AllowedScriptNotifyUris = WebView.AnyScriptNotifyUri;

protected async void webview_ScriptNotify(object sender, NotifyEventArgs e)
{
  await Windows.System.Launcher.LaunchUriAsync(new Uri(e.Value));
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在 Windows 8 上的 Web 视图中捕获导航事件? 的相关文章

随机推荐

  • Canvas 已通过本地 chrome:// 扩展 URL 被跨域数据污染

    我正在开发 google chrome 扩展程序 并尝试将与扩展程序捆绑在一起的图像加载到画布中 var canvas document createElement canvas canvas width 470 canvas height
  • SettingsClient 的位置请求始终为 RESULT_CANCELED

    在获取当前位置流时 我使用 SettingsClient 根据当前 LocationRequest 检查位置设置是否得到满足 目前 我的优先级设置为HIGH ACCURACY 这需要不惜一切代价启用GPS fusedLocationProv
  • Rstudio 中的“工具错误:::httpdPort <= 0L : ....”是什么意思?

    我已将 R 升级到版本 3 2 2 当我重新启动 Rstudio 时 在显示 gt 之前 出现错误消息 Error in tools httpdPort lt 0L comparison 4 is possible only for ato
  • NSAttributedString 中的 HTML 渲染速度非常慢

    我有 UITableView 和动态调整单元格大小 以 HTML 格式显示注释列表 但我遇到了 NSAttributedString 呈现 HTML 内容极其缓慢的问题 这是探查器的快照 我尝试将 NSAttributedString 初始
  • 在 O(n) 中运行的数组“最大差异”算法?

    给定一个由 N 个整数组成的数组 对数组进行排序 并找到排序后的数组中差值最大的 2 个连续数字 示例 输入 1 7 3 2 output 4 排序后的数组是 1 2 3 7 最大差值为 7 3 4 算法A运行于O NlogN time 我
  • 导航视图中的自定义菜单项大小和文本大小

    我正在使用代码来自定义导航视图中的文本高度和行高 它适用于 api21 但相同的代码在 api 16 中不起作用 我怎样才能使其工作 COde 创建一个样式并将其应用到 NavigationView 使用app theme 然后 使用 ap
  • 为什么 numpy/pandas 解析长行的 csv 文件如此慢?

    我试图有效地将每行 以及几千行 大约 20 000 个条目的 csv 文件解析为 numpy 数组 或数组列表 或任何类似的东西 我发现了许多其他问题 以及this博客文章 表明 pandas 的 csv 解析器非常快 然而 我对 pand
  • 如何调整 jQuery DatePicker 控件的大小

    我是第一次使用 jQuery DatePicker 控件 我已经让它在我的表单上运行了 但它大约是我想要的两倍大 大约是 jQuery UI 页面上的演示的 1 5 倍大 我缺少一些简单的设置来控制大小吗 Edit 我找到了一条线索 但它带
  • 如何在 TypeScript 中声明具有嵌套对象数组的对象?

    我有两节课都是这样的 class Stuff constructor things Thing name string class Thing constructor active boolean 我尝试在我的应用程序中声明一个字段 如下所
  • Sonata Admin Bundle:在列表视图上显示收藏总数

    有没有办法在列表视图上显示集合总数 想象一下 有一个用户可以拥有许多链接 如何在列表视图上显示总链接数 显示字段非常简单 有按此虚拟字段排序的解决方案 实体 Some php有关计数的更多信息请参见此处额外的惰性关联 public func
  • 在 jQuery UI 自动完成中使用 HTML

    Before jQuery用户界面1 8 4 我可以使用HTML在我为使用自动完成功能而构建的 JSON 数组中 我能够做类似的事情 row array label span style color red font family cour
  • 将多个 TensorFlow 数据集交错在一起

    当前的 TensorFlow 数据集交错功能基本上是一个交错平面地图 将单个数据集作为输入 考虑到当前的 API 将多个数据集交错在一起的最佳方法是什么 假设它们已经建成 并且我有一份清单 我想交替地从它们中生成元素 并且我想支持具有超过
  • 如何从 Powershell 运行 MSBuild 而不生成 msbuild.exe 进程?

    我正在考虑通过直接点击 MSBuild 程序集从 Powershell 脚本运行 MSBuild 而不是查找 MSBuild 安装路径并将 msbuild exe 作为子进程启动 有人这样做过吗 运行构建的最简单 最直接的方法是什么 您想指
  • .net core 3依赖注入服务作为“配置”的参数

    我刚刚将 net core 应用程序从版本 2 2 升级到 3 在startup cs 的ConfigureServices 方法中 我需要解析身份验证服务使用的服务 我正在使用 services BuildServiceProvider
  • Keycloak https auth页面无法访问

    我生成了自签名域证书 然后启动了Keycloak docker run name keycloak e KEYCLOAK ADMIN admin e KEYCLOAK ADMIN PASSWORD password e KC HTTPS C
  • 通过更改 C++ 内存来损坏计算机的风险

    我了解一些 Java 现在正在尝试 C 显然在 C 中 您可以执行诸如声明大小为 6 的 int 数组之类的操作 然后更改该数组的第 10 个元素 我理解它只是后面的第 4 个字节为 6 整数数组分配的内存部分的末尾 所以我的问题是 如果我
  • 计算字符串中每个字母的频率

    这是来自 pyschools 的问题 我确实做对了 但我猜会有一个更简单的方法 这是最简单的方法吗 def countLetters word letterdict for letter in word letterdict letter
  • 为单独的 g_main_loop 添加回调

    我对如何做有一些误解GMainLoop工作 主要的事情 添加一些回调的 APIg main loop like g timeout add seconds 不要将指针指向要添加该回调的循环 看来您为所有人添加了回调g main loop实例
  • 我如何处理承诺的错误?

    作为节点程序员 我习惯使用 nodebacks 来处理代码中的错误 myFn param function err data if err error handling logic else business logic 编写该函数时 我可
  • 如何在 Windows 8 上的 Web 视图中捕获导航事件?

    我的应用程序中有一个 Webview 我想拦截任何点击并在 IE 中打开链接 而不是在应用程序的 Webview 内 我只能看到 NavigationFailed 和 LoadingComplete 事件 没有任何关于我可以拦截的 即将导航