gpt4 book ai didi

c# - 如何使用 C# 在 JavaScript 中创建的自定义对象上调用方法?

转载 作者:太空宇宙 更新时间:2023-11-03 16:53:33 25 4
gpt4 key购买 nike

我有一个 WebBrowser 控件。我在 head 标签中添加了一些 JavaScript,我可以通过添加警报看到它按预期工作。在这个 js 中,我正在创建一个函数并向其原型(prototype)添加一些成员,如下所示:

function test() {
}

test.prototype.run = function() {
alert('success!')
}

function createTest() {
return new test()
}

然后回到 C# 中我正在做的事情:

dynamic test = this.browser.InvokeScript("createTest");
test.run();

我可以看到测试对象是某个 ComObject,但是当我调用 run() 时什么也没有发生。我没有收到任何错误,但什么也没发生。有谁知道如何调用这种类型的自定义对象?

另外假设我想摆脱 createTest() 方法,我如何从 C# 创建一个新的测试实例?

此外,对于奖励积分,关于将事件附加到此自定义对象(比如“完整”成员)以便它回调到我的 C# 代码中,我是否需要了解任何特殊信息?

最佳答案

尝试传入一个空的 System.object 数组作为 InvokeScript 的第二个参数,然后调用 test.run();

关于c# - 如何使用 C# 在 JavaScript 中创建的自定义对象上调用方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3063609/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com