WinForms中的CefSharp - ExecuteScriptAsync或EvaluateScriptAsync不起作用

时间:2015-11-25 14:07:30

标签: c# .net winforms cefsharp

我在我的项目中使用CefSharp WinForms,我无法从CefSharp浏览器控件执行JS脚本 (我当时要导航到URL - 因此大多数CEF功能都有效) 我尝试按照教程:https://github.com/cefsharp/CefSharp/search?utf8=%E2%9C%93&q=BoundObject

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

using CefSharp.WinForms;
using CefSharp.Internals;

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

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

但是当我尝试使用其中一个函数时,我仍然收到以下错误: ExecuteScriptAsync或EvaluateScriptAsync

我收到以下错误:

'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 个答案:

答案 0 :(得分:1)

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

private void button1_Click(object sender, RoutedEventArgs a)
{
    Image _img= button1.Template.FindName("image1", button1) as Image;
    Style _imgStyle = new Style { TargetType = typeof(Image) };
     _imgStyle.Setters.Add(new Setter(Image.SourceProperty, new BitmapImage(new Uri(@"pack://application:,,,/YourAssemblyName;component//Images/ContentImage1.png"))));
    _img.Style = _imgStyle;
}

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

 using CefSharp;

答案 1 :(得分:0)

CaptainBli是正确的:您必须使用“使用CefSharp”

您可能没有想到它,因为它似乎在另一个命名空间中:“ CefSharp.WinForms.ChromiumWebBrowser”。

这是因为EvaluateScriptAsync和ExecuteScriptAsync是扩展方法