WebBrowser和Hosted Html信息互通

6 篇文章 0 订阅

摘要: 1.Hosted Html-WebBrowser 使用window.external.notify (param)在Html端,然后在WebBrowser端使用WebBrowser.ScriptNotify来接受数据. 2.WebBrowser-Hosted Html webBrowser.InvokeScript(execScript, history.go(-1) ...

1.Hosted Html->WebBrowser

使用window.external.notify ()在Html端,然后在WebBrowser端使用WebBrowser.ScriptNotify来接受数据.

2.WebBrowser->Hosted Html

webBrowser.InvokeScript("execScript", "history.go(-1)"); 
string height = (string) webBrowser.InvokeScript ( "eval", "document.body.offsetHeight.toString()" );
StringBuilder bldr = new StringBuilder();bldr.Append("var script = document.createElement('script');");bldr.Append("script.text = 'function cb () { "); bldr.Append("window.external.notify (\"this text was injected on the fly\");}';");bldr.Append("var headNode = document.getElementsByTagName('HEAD'); "); bldr.Append( "if (headNode[0] != null);headNode[0].appendChild(script); ;");bldr.Append("var element= document.getElementById('btn'); "); bldr.Append("if ( element != null ) element.onclick = cb;");webBrowser.InvokeScript("execScript", bldr.ToString());

以上为3个实例,具体请参照博客:

http://blogs.msdn.com/b/jaimer/archive/2011/02/07/communication-between-html-in-webbrowser-and-silverlight-app.aspx

同时

webBrowser.InvokeScript还可以单独接受string作为参数调用没有param的javascript方法.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值