CefGlue:DotNet下的webkt封装
转载请注明出处:http://www.cnblogs.com/tangmonk/p/3292785.html
之所以要使用到这个开源框架,是因为我想在我的项目中嵌入Web页面。为什么要想到嵌入web页面呢?因为现在的web是在太强大了,有些功能和界面实现起来比程序要简单很多。
我在这里汇总下我的经验,方便大家学习。
Cefglue的搭建我就不说了。
1.加载本地HTML
string temp = System.Environment.CurrentDirectory +"\\JSONEditor\\editor\\JSONEditor.html"; browser.NavigateTo(temp);
2.执行JS
执行Js和获取html源码的这些常用方法在wpfCefbrowser下的类型为CefBrowser的成员变量里,但是官方没有把他的get,set方法写出来。这个需要自己写好了然后编译成新的dll,然后加载进自己的项目里。
browser.Browser.GetMainFrame().ExecuteJavaScript("alert('11')","",0);
ExecuteJavaScript的后面两个参数是调试用到的,随便填就好
3.获取html源代码
browser.Browser.GetMainFrame().GetSource();
也是在GetMainFrame里面,这里getSource里要传一个CefStringVisitor类型的参数,我看来看下这个类,这个类有一个抽象方法,
protected abstract void Visit(string value);
value就是html代码,我们需要继承这个类,然后重写这个方法就Ok了。
这里我要说明一点,这个是可以先执行了js(对html进行修改)然后在获取html的。刚开始我以为执行js和获取html是异步的,但是我发现应该是这样的,js不是异步。
在这里我是发表的第一篇文章,我也是第一次使用wpf,所以还有很多不懂的需想大家请教:
我想问下,现在有没有成熟的框架或者语言能够方便的搭建“动态UI,复杂结构,导入(自动生成视图)数据,导出数据"?
另外在问一点,博客园的文章编辑器怎么这么挫?html代码都搞进去了?
浙公网安备 33010602011771号