RegisterJsObject CefSharp不起作用

sal*_*aly 4 javascript c# wpf cefsharp

我有CefSharp和js沟通的问题.这是我的结构.在我的MainWindow.xaml.cs中,我有:

chromium = new CefSharp.Wpf.ChromiumWebBrowser();
chromium.RegisterJsObject("jsInterface", new jsMapInterface());
Run Code Online (Sandbox Code Playgroud)

其中jsMapInterface是一个带有方法的公共类.

在我的html/js文件夹中,我调用了一个C#方法:

window.jsInterface.myTest();
//jsInterface.myTest();  //I have tested twice
Run Code Online (Sandbox Code Playgroud)

其中myTest()是jsMapInterface类中的一个方法,但没有任何反应.我的错误在哪里?

谢谢你的建议.

jor*_*rnh 9

尝试UpperCasing在C#侧例如MyTest()下提请注意https://github.com/cefsharp/CefSharp/wiki/Frequently-asked-questions#3-how-do-you-expose-a-net-class-to -javascript

CefSharp确实执行名称修改.原因是它试图鼓励在JS方面遵循JS约定并在那方鼓励遵循C#约定.

最后从https://github.com/cefsharp/CefSharp/search?utf8=%E2%9C%93&q=BoundObject上的示例代码开始工作