繁体   English   中英

我可以直接在WPF中调用javascript而无需使用浏览器对象

[英]Can I invoke javascript directly in WPF without using the browser object

我希望能够在我的WPF应用程序上直接创建一个使用开放层的应用程序。 我发现我可以创建一个浏览器对象并调用JavaScript,但我不需要一个完整的浏览器。 是否有一些我可以使用的脚本对象并一起绕过浏览器对象?

您不需要Web浏览器或WebBrowser控件来在.NET Framework中使用JavaScript。 .NET Framework有一个内置的JavaScript实现,它实现了JavaScript / ECMAScript的超集,如此此处所述

要使用.NET Framework内置的JavaScript实现:

  1. 添加对Microsoft.JScript程序集的引用
  2. 使用new JScriptCodeProvider().CreateCompiler().CompileAssemblyFromSource(...).CompiledAssembly将JavaScript new JScriptCodeProvider().CreateCompiler().CompileAssemblyFromSource(...).CompiledAssembly为程序集
  3. 像往常一样在编译的程序集中调用代码(GetType / GetMethod / Invoke)

请注意,如果您的JavaScript代码旨在操纵DOM或使用Web浏览器的其他功能,您仍然可以使用.NET Framework的JavaScript版本,但您必须自己提供预期的对象。

只有WPF中的WebBrowser可以运行javascript

 myWebBrowser.ObjectForScripting =  new HtmlBridge();

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM