我正在尝试从JavaScript访问Silverlight字典。 如此处所述, Silverlight为可以通过JavaScript访问的字典类型创建了包装器。
function MyFunction(dictionary)
{
// This works okay...
alert(dictionary["someKey"]);
}
然而,在我的情况下,我不知道字典中实际包含哪些键。然而,MSDN页面似乎没有描述任何访问此信息的方法。我已经尝试过:
function MyFunction(dictionary)
{
for (var item in dictionary)
{
// Do stuff
alert(item);
}
}
然而,这并不起作用。我还尝试使用为数组定义的属性和方法,例如 length
和 toArray()
。我尝试猜测一个 keys
属性。毫无疑问,它们都不起作用。
这是 Silverlight 公开的包装器中的一个重大疏忽,还是我漏掉了什么?最好的替代方案是什么?
为了完整起见,Silverlight 代码并不是非常有趣,但看起来像这样:
void MyMethod(IDictionary<string, string> dictionary)
{
jsObjectDefiningMyFunction.MyFunction(dictionary);
}