您当前的位置: 首页 >  ar

顺其自然~

暂无认证

  • 2浏览

    0关注

    1317博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

Cefsharp js调用c#与c#调用js

顺其自然~ 发布时间:2020-12-31 11:11:57 ,浏览量:2

在cefsharp63.02版本下注册绑定事件需要在绑定事件之前申明这段代码。否则不能绑定、报错;

CefSharpSettings.LegacyJavascriptBindingEnabled = true

C#代码

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using CefSharp;
using CefSharp.WinForms;
using System.IO;

namespace cefSharp
{
    public partial class Form1 : Form
    {
        ChromiumWebBrowser browser;
        public Form1()
        {
            InitializeComponent();
            browser = new ChromiumWebBrowser(@"C:\Users\Administrator\Desktop\cefSharp\cefSharp\test.html");
            browser.Dock = DockStyle.Fill;
            panel1.Controls.Add(browser);
            CefSharpSettings.LegacyJavascriptBindingEnabled = true;//新cefsharp绑定需要优先申明
            browser.RegisterJsObject("boud", new JsEvent(),new CefSharp.BindingOptions() { CamelCaseJavascriptNames = false } );//这个地方相当于注册了一个BO(浏览器对象,和window对象是平级的)
        }


        private void button1_Click(object sender, EventArgs e)
        {
            browser.ExecuteScriptAsync("oce_one()");//调用js
        }
    }
    public class JsEvent
    {
        public string MessageText { get; set; }
        public void ShowTest()
        {
            MessageBox.Show("this in c#.\n\r" + MessageText);


        }
        public void ShowTestArg(string ss)
        {
            MessageBox.Show("收到Js参数的调用\n\r"+ss);
        }
    }
}

JavaScript代码

function oce_one(){
    return "aaa";
}

bund.ShowTest();

 

关注
打赏
1662339380
查看更多评论
立即登录/注册

微信扫码登录

0.0463s