gar*_*rik 17 javascript webbrowser-control winforms dom-events
我从.Net阅读了WebBrowser控件 - 如何注入Javascript,是否可以从c#winforms和其他许多人调用Javascript方法.这些示例是返回函数值或警报窗口(同步调用).我必须从事件处理程序(asyn调用)获取结果:
<script type="text/javascript">
window.onload = function() {
var o = new M.Build(document.getElementById("ZID"));
M.Events.observe(o, o.Events.Success, function() {
// I have to get some value!!
});
M.Events.observe(o, o.Events.Fault, function() {
// I have to get some value!!
});
}
</script>
Run Code Online (Sandbox Code Playgroud)
gar*_*rik 33
从JavaScript调用C#
简单地说,您可以将C#对象公开给JavaScript可以直接调用的WebBrowser WebBrowser类公开一个名为ObjectForScripting的属性,该属性可以由您的应用程序设置并成为JavaScript中的window.external对象.该对象必须将ComVisibleAttribute设置为true
C#:
[System.Runtime.InteropServices.ComVisibleAttribute(true)]
public class ScriptInterface
{
public void callMe()
{
… // Do something interesting
}
}
webBrowser1.ObjectForScripting = new ScriptInterface();
Run Code Online (Sandbox Code Playgroud)
使用Javascript:
window.external.callMe();
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
24170 次 |
| 最近记录: |