我正在使用以下代码从带有 WebBroser 控件的 C# 应用程序调用 javascript 函数
webBrowser1.Document.InvokeScript("function", new object[] { "arg" });
有什么方法可以将对象(除了字符串、 double 等)作为参数传递给函数测试吗?
class SomeObject
{
int number = 0;
string str = "1234";
}
webBrowser1.Document.InvokeScript("function", new object[] { new SomeObject() });
上面的结果在 typeof(args1)
下面的 javascript 中返回 unknown
function function(arg1) {
alert(typeof(arg1));
}
最佳答案
这显然是微不足道的。 SomeObject
类只需像这样标记为 COM 对象。
[PermissionSet(SecurityAction.Demand, Name = "FullTrust")]
[System.Runtime.InteropServices.ComVisibleAttribute(true)]
class SomeObject
{
int number = 0;
string str = "1234";
}
但是不能从 Javascript 访问属性。
关于c# - 如何通过 HtmlDocument.InvokeScript 将对象作为参数传递给 javascript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4388748/