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代码都搞进去了?

posted on 2013-08-31 09:05  TangMonk  阅读(1133)  评论(0)    收藏  举报

导航