WebView2中C#和JavaScript代码互操作

本文介绍如何在C#中通过WebView2与前端JavaScript进行交互。主要包括:创建ScriptHost并注册到WebView2;暴露公共方法供JavaScript调用;实现同步与异步调用方式。
该文章已生成可运行项目,

C#调用或者执行前端的JavaScript

    1.需要创建一个ScriptHost,并注册到WebView2中

  [ClassInterface(ClassInterfaceType.AutoDual)]
    [ComVisible(true)]
    /// <summary>
    /// 网页调用C#方法
    /// </summary>
    public class ScriptCallbackObject
//注册winning脚本c#互操作
WebViewCore.CoreWebView2.AddHostObjectToScript("winning", ScriptHost);
//注册全局变量winning
WebViewCore.CoreWebView2.AddScriptToExecuteOnDocumentCreatedAsync("var winning= window.chrome.webview.hostObjects.winning;");

    2.ScriptHost中暴露的公共方法,都可以在前端JavaScript中调用

 public MessageInfo GetMessageInfo()
        {
            return new MessageInfo()
            {
                Message = $"Message from .NET at {DateTime.Now:t}"
            };
        }
        public string PassMessageInfo(string jsonMessageInfo)
        {
            var msg = JsonConvert.DeserializeObject<Messag
本文章已经生成可运行项目
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值