我正在开发一个小型silverlight 应用程序,该应用程序涉及在javascript 和silverlight 之间传递一些数据。我也在使用silverlight虚拟地球控制。
我遇到的奇怪之处是可以将 Microsoft.Maps.MapControl.LocationCollection 注册为脚本可创建类型并实例化并将其传递给 ScriptableMember。这很棒,但我看不到 LocationCollection 被标记为 ScriptableType 的位置——我是否遗漏了一些明显的东西。
App.xaml.cs 中的代码 - Application_Startup
HtmlPage.RegisterCreateableType("mapLocationCollection", typeof(Microsoft.Maps.MapControl.LocationCollection));
有效的Javascript代码!
var locs = SLPlugin.Content.services.createObject('mapLocationCollection');
我认为为了在 JavaScript 中实例化类的实例,需要将类型标记为 [ScriptableType] 并且需要将类型注册为可创建类型。据我所知,LocationCollection(或其任何超类)具有此属性。
有人可以帮我解决这个问题吗?