为什么javascript调用Silverlight里的方法在地图上打点不显示?
我将Silverlight嵌套在html页面中,Silverlight里有地图,然后我通过html调用了Silverlight里的方法在地图上打点,怎么不显示?
但是在Silverlight里用这个方法就可以显示。
有人能帮我解决吗?
[解决办法]
[ScriptableMember]
方法是否定义为脚本成员
[解决办法]
首先你需要满足html和Silverlight互操作的条件。
将Silverlight的类注册到客户端,如下代码:
//注册客户端JavaScript代理方法,以便客户端JavaScript可访问Silverlight方法实现互操作。
HtmlPage.RegisterScriptableObject("JCall", this);
标记你的Silverlight类[ScriptableType],然后将你提供给JavaScript方法的方法标记为:[ScriptableMember],这里需要注意,私有的方法JavaScript是不能访问到的。
满足以上条件就可以通过JavaScript访问Silverlight了。
关于地图方面,详细可查阅我的系列博文:http://blog.csdn.net/beniao277/archive/2010/01/30/5273109.aspx