我正在考虑将项目移动到WinForm应用程序中的嵌入式WebView类型体系结构中,并正在考虑DotNetBrowser和CefSharp。
经过多次搜索,我似乎找不到免费CefSharp项目的功能与付费的DotNetBrowser组件之间的任何比较。 主要区别是 DotNetBrowser 的支持选项还有其他记录的差异吗?
DotNetBrowser 和 CefSharp API之间的主要区别在于 DotNetBrowser 提供 DOM 层 API,而 CefSharp 不提供。
例如,在 DotNetBrowser 中,可以使用以下方法获取 DOM 元素:
DOMDocument document = Browser.GetDocument();
DOMNode div = Browser.GetDocument().GetElementsByTagName("div").FirstOrDefault();
然后,您可以使用 C# 处理 DOM 元素。例如,DotNetBrowser支持从.NET端订阅DOM事件。
要在 CefSharp 中执行此操作,您需要使用 JavaScript 评估来处理 DOM 树:
browser.GetMainFrame().ExecuteJavaScriptAsync("document.getElementsByTagName('div')[0]");