提问者:小点点

WinForms中的CefSharp-ExecuteScriptAsync或EvaluateScript Async不起作用


我在我的项目中使用了CefSharp WinForms,但我无法让它从CefSharp浏览器控件执行JS脚本(虽然我要导航到URL,所以大部分CEF功能都可以正常工作),我尝试在以下位置遵循教程:https://github.com/cefsharp/CefSharp/search?utf8=✓

我正在使用以下名称空间:

using CefSharp.WinForms;
using CefSharp.Internals;

并添加了对以下程序集(x64)的引用:

CefSharp.WinForms.dll
CefSharp.dll
CefSharp.Core.dll

但当我尝试使用其中一个函数时仍然会出现以下错误:ExecuteScriptAsync或EvaluateScript Async

我得到以下错误:

'CefSharp.WinForms.ChromiumWebBrowser' does not contain a definition for 'EvaluateScriptAsync' and no extension method 'EvaluateScriptAsync' accepting a first argument of type 'CefSharp.WinForms.ChromiumWebBrowser' could be found (are you missing a using directive or an assembly reference?)

'CefSharp.WinForms.ChromiumWebBrowser' does not contain a definition for 'ExecuteScriptAsync' and no extension method 'ExecuteScriptAsync' accepting a first argument of type 'CefSharp.WinForms.ChromiumWebBrowser' could be found (are you missing a using directive or an assembly reference?)

谁能告诉我我错过了什么?还有其他API吗?也许我错过了一些参考dll?谢啦


共2个答案

匿名用户

您可能缺少另一个名称空间。我建议你补充:

 using CefSharp;

我们遇到了同样的麻烦,发现我们只是错过了这一次。我们现在有:

using System.Text;
using CefSharp;
using CefSharp.WinForms;
using CefSharp.Internals;

匿名用户

船长是正确的:你必须使用“使用”命令

可能您没有想到它会出现在这里,因为它似乎位于另一个名称空间:“CefSharp.WinForms.ChromiumWebBrowser”。

这是因为EvaluateScript Async和ExecuteScriptAsync是扩展方法