4

在 WPF 中,您可以绑定 ExpandoObject 和其他动态类型:

    dynamic o = new ExpandoObject();
    o.Foo = "Hello";
    DataContext = o;

<TextBlock Text="{Binding Foo}"/>

这在 Silverlight 5 中不起作用。有没有办法让它起作用,或者有人有这个问题的链接吗?

4

1 回答 1

4

在 Silverlight 5 中,他们没有添加绑定到动态对象的默认机制,而是添加了一个新接口ICustomTypeProvider。并且该接口也没有添加到 ExpandoObject 中,但是使用 expando 您应该能够使用索引器绑定,因为它是一个IDictionary<string, object>实现INotifyPropertyChanged.

<TextBlock Text="{Binding [Foo]}"/>
于 2012-06-05T12:36:07.347 回答