是否有可能等待来自window.external.Foo()的回答?

时间:2015-11-16 14:49:14

标签: javascript c# .net

我在.Net Wrapper(WebBrowser控件)中使用JavaScript 我想运行.Net函数并等待它返回JavaScript的值, 我可以从JS调用该函数但是无法等待它返回一个值, 例如,我的JS代码是:

IsConnected = function()
{
        var answer = window.external.IsConnected();
};

我的C#代码是:

[ComVisible(true)]
public class JavaScriptBackEnd
{
    public bool IsConnected()
    {
        if (verifyConnection())
        {
            return true;        
        }
        return false;
    }
}

在C#或JavaScript中是否有办法阻止JS函数,直到" IsConnected"函数完成并返回一个值?

谢谢!

1 个答案:

答案 0 :(得分:0)

确保在设置Web浏览器控件时包含以下内容(假设webBrowser是控件的名称):

webBrowser.ObjectForScripting = new JavaScriptBackEnd(this);

这告诉Web浏览器在哪里查找脚本。