我正在开发一个小的Silverlight应用程序,它涉及在JavaScript和Silverlight之间传递一些数据。我也在使用Silverlight虚拟地球控制。
我遇到的奇怪之处在于,可以将microsoft.maps.mapcontrol.locationCollection注册为脚本可创建类型,并将其实例化并传递给脚本可成员。这很好,但我看不到locationCollection被标记为scriptableType的位置-我是否遗漏了一些明显的东西。
app.xaml.cs中的代码-应用程序启动
HtmlPage.RegisterCreateableType("mapLocationCollection", typeof(Microsoft.Maps.MapControl.LocationCollection));
有效的javascript代码!
var locs = SLPlugin.Content.services.createObject('mapLocationCollection');
我认为为了在javascript中实例化类的实例,需要将类型标记为[scriptabletype],并且该类型需要注册为可创建类型。据我所知,locationCollection(或它的任何超类)具有此属性。
有人能帮我把这件事想清楚吗?