Silverlight数据网格绑定 - 如何将子字典项绑定为父类属性?

时间:2012-02-22 09:50:08

标签: c# silverlight binding datagrid

我有一个像这样的类作为itemsource绑定到datagrid:

public class Item
{
  public int Id { get; set; }   
  public string Status { get; set; }
  public Dictionary<string, string> DynamicProperties { get; set; }
}

我想将List<Item>绑定到silverlight datagird并显示列

id |状态| DynamicProperties [0] | DynamicProperties [1] | ......

我该如何实现?

1 个答案:

答案 0 :(得分:2)

支持Silverlight 4及以上bindings with string indexers。您可以使用以下方法简单地绑定路径:

{Binding Path=DynamicProperties['propertyIndex']}

对于Silverlight的早期版本,解决方案要复杂得多as described on my blog

如果要直接创建列,只需通过代码隐藏即可。上面引用的博客文章显示了如何动态创建DataGrid。