You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何无需配置包清单URI实现UWP WebView应用退出功能?

无需配置包清单URI实现UWP WebView退出应用的方案

不需要配置包清单URI也能实现这个退出功能,核心是通过WebView.ScriptNotify事件配合UWP原生退出API完成,具体步骤如下:

  • 绑定ScriptNotify事件
    在UWP项目的代码后台(比如MainPage.xaml.cs),为WebView控件绑定ScriptNotify事件处理方法,示例代码:

    public MainPage()
    {
        InitializeComponent();
        MyWebView.ScriptNotify += MyWebView_ScriptNotify;
        // 加载目标HTTPS地址
        MyWebView.Source = new Uri("https://your-target-url.com");
    }
    
  • 处理事件并执行退出操作
    在事件处理方法中,判断接收到的消息是否为约定的"close",如果是则弹出确认对话框,点击"是"时调用UWP退出API:

    private void MyWebView_ScriptNotify(object sender, NotifyEventArgs e)
    {
        if (e.Value == "close")
        {
            var dialog = new MessageDialog("确定要退出应用吗?", "提示");
            dialog.Commands.Add(new UICommand("是", cmd =>
            {
                // 退出UWP应用
                Application.Current.Exit();
            }));
            dialog.Commands.Add(new UICommand("取消"));
            _ = dialog.ShowAsync();
        }
    }
    
  • 默认支持HTTPS源的ScriptNotify
    对于HTTPS来源的页面,WebView默认允许window.external.notify()触发ScriptNotify事件,不需要在包清单中额外配置URI,你已写的JS代码window.external.notify("close");可以直接生效。

注:Application.Current.Exit()是UWP官方认可的应用退出方式,调用后会直接终止应用进程。

内容的提问来源于stack exchange,提问作者Tharun Koti

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.19 17:07:37