Cef Browser Wpf探索dom,查找元素并更改值

时间:2015-04-15 19:08:09

标签: wpf dom browser cefsharp

进一步发布帖子(CefSharp load a page with browser login)。 我实现了IRequestHandler接口和不同的方法,特别是GetAuthCredentials我显示对话框并恢复用户和密码并将其传递给事件处理程序。 现在我想访问dom,其中我得到了几个frameset个不同的frames,我对一个frame感兴趣,我知道name属性。 在frame内,我需要获取不同类型inputselect等的列表... 在我的应用程序中,我有一个按钮,我用它来设置不同elements的值,具体取决于它们是否显示在显示的页面上。 问题是我没有看到任何方式获取documentframes集合等....

1 个答案:

答案 0 :(得分:5)

CefSharp没有公开基础DOM,也不太可能看到http://magpcss.org/ceforum/viewtopic.php?f=6&t=10652&p=19533#p16750

您最好的选择是使用EvaluateScriptAsyncJavascript Binding

的组合

https://github.com/cefsharp/CefSharp/wiki/Frequently-asked-questions#2-how-do-you-call-a-javascript-method-that-return-a-result https://github.com/cefsharp/CefSharp/wiki/Frequently-asked-questions#3-how-do-you-expose-a-net-class-to-javascript

如果您绝对必须拥有DOM访问权限并无法创建解决方案,那么CefGlue可能是您的最佳选择。 (我应该指出DOM只能在Render进程中进行访问,因此需要通过Browser将此类调用传递给IPC进程,因此不是一件轻而易举的事。)