javascript - GeckoFX 浏览器 : Call C# function from JavaScript

标签 javascript c# gecko geckofx

我正在尝试对从 GeckoWebBrowser 的 MessageEvent 获得的数据 (p) 调用 MessageBox.Show(p) 函数。它不工作!帮忙?
(这应该显示一个消息框说“测试”)

Javascript:

function callServerFunction(fname, parameter) {
    event = new MessageEvent(fname, { 'view': window, 'bubbles': false, 'cancelable': false, 'data': parameter });
    document.dispatchEvent(event);
}

function fillClientsTable() {
    callServerFunction("fillClientsTable", "test");
}

window.onload = function () {
    fillClientsTable();
};

C#:

private void Form1_Load(object sender, EventArgs e) {
    browser.AddMessageEventListener("fillClientsTable", (string p) => MessageBox.Show(p));
}


附言测试时,函数onload()、fillClientsTable()和callServerFunction()都被调用了! (我在每个内部使用 alert('test') 检查。)

最佳答案

我真傻,原来没有调用 Form1_Load!不知道为什么,但我将其删除并重新添加到事件列表中。
现在一切正常:)

关于javascript - GeckoFX 浏览器 : Call C# function from JavaScript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39933893/

相关文章:

c# - 应用程序 C# 中计时器的开销

c++ - 与 nsRunnable 链接时对 typeinfo 的 undefined reference

javascript - 最新的 knockout 和 jquery ui 对话框错误 : cannot call prior to initialization

javascript - 字母验证控制

c# - 无法安装 NuGet 包 : Falling back to NuGet Local Cache

css - 灵活的盒子布局模型: How should auto margins in the cross-axis direction behave?

html - 如何使用 Gecko 更改 VB.net 应用程序中显示的 HTML

javascript - 为什么我不能用 Meteor 渲染这个简单的列表?

javascript - 使用 knockoutjs 将多个 css 类与 <li> 元素绑定(bind)

c# - 架构 ASP.NET MVC 5