CefSharp75 怎样用JS调用C#

Form cs代码

CefSharpSettings.LegacyJavascriptBindingEnabled = true;

browser.RegisterJsObject("boud", new JsEvent(),new CefSharp.BindingOptions() { CamelCaseJavascriptNames = false }

    public class JsEvent
    {
        public string MessageText { get; set; }
        public void ShowTest()
        {
            MessageBox.Show("this in c#.\n\r");
        }
                public string Hello(string name)
        {
            return "Hello " + name;
        }
        public void ShowTestArg(string ss)
        {
            MessageBox.Show("收到Js参数的调用\n\r"+ss);
        }
    }

js代码

    boud.Hello("aaa").then((r) => {
        alert(r);
    })
            boud.ShowTest()
            加上
            CefSharp.BindObjectAsync("boud");
            也不可以
            都是提示
            boud is not defined
            CefSharp is not defined
c#

1个回答

在C#中向浏览器注册object 对象有两种方法
//异步
RegisterJsObject
//同步
RegisterAsyncJsObject
对应的前端javascript 调用也是两种方式。

楼上注册同步方式RegisterJsObject,不适用then回调。
另外boud is not defined 那就是注册没成功,注意下顺序。

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐