【发布时间】:2011-10-20 00:00:13
【问题描述】:
我正在尝试从 JavaScript 访问 Silverlight 字典。正如here 所述,Silverlight 为可以通过 JavaScript 访问的 Dictionary 类型创建了一个包装器。
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);
}
【问题讨论】: