silverlight - 在 Silverlight 中绑定(bind) ExpandoObject

标签 silverlight dynamic binding expandoobject

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

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

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

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

最佳答案

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

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

关于silverlight - 在 Silverlight 中绑定(bind) ExpandoObject,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10887820/

相关文章:

c# - 如何在 Dynamic Linq 中编写 String.Contains

c# - 是否可以使用触发器 setter 来更改 ViewModel 属性?

.net - 从 WCF 服务调用 asmx Web 服务

c# - RIA 服务/EF。对派生类中 bool 字段的更改不会保存到数据库

c# - Silverlight 4 剪贴板安全异常 "access is not allowed"?

Delphi:如何使用 DynArraySetLength 设置 RTTI 访问的动态数组的长度?

silverlight - Silverlight Prism + MDI窗口

c# - 为什么在混合 C# ValueTuple 和动态时出现此编译器错误

XAML ComboBox 绑定(bind)到属性

wpf - 在上下文菜单命令参数 mvvm 中获取行