【发布时间】:2012-05-04 21:52:00
【问题描述】:
我正在尝试通过 Winforms 应用程序将 JSON 字符串发送到我的 Silverlight 应用程序。
我已经尝试了几次通过使用我的 silverlight 方法来完成它
HtmlPage.RegisterScriptableObject("Page", this);
.....
[ScriptableMember]
public void CallMeInSilverlight(string message)
{
HtmlPage.Window.Alert("The form said: " + message);
}
在javascript中
function CallMe(message) {
var control = document.getElementById('silverlightControl');
control.Content.Page.CallMeInSilverlight(message);
}
但由于某种原因,我无法使用 javascript 进行这项工作。它只是没有被调用。
在 Winforms 中
webBrowser1.Document.InvokeScript("CallMe", new object[] { "testing 1 2 3" });
我是不是做错了什么?
【问题讨论】:
-
一切正常。你确定你的silverlight控制ID是正确的吗?您是否在网络浏览器中收到任何 JS 错误?
-
你设置
WebBrowser.IsScriptEnabled = true了吗? -
约翰·科尔纳:
-
我再次尝试了,我将我的“测试”方法放在 DocumentCompleted 事件中,而不是直接在开始时,它在首先给出错误消息后现在可以工作。错误消息仅告诉我“此页面上的脚本发生错误。第 56 行”和其他一些内容,但没有告诉我是什么错误。 “未指定的错误,代码 0”。
标签: c# winforms silverlight webbrowser-control