可以在XAML中绑定IGrouping枚举吗?如果是这样,绑定语法会是什么样的?

时间:2010-06-26 15:34:02

标签: linq xaml binding

我有一个Customer个对象的列表,我已将其分组到Country。

var query = 
    from c in ctx.Customers group c by c.Country
    ...

query现在是一个组的枚举(IQueryable<IGrouping<string, Customer>>),其中每个枚举项都定义了一个组(IGrouping<string, Customer>)。

我了解IGrouping是:组的关键(我的示例中为Country)和按国家/地区分组的项目。如何使用foreach语句迭代这些数据是直截了当的,但我需要帮助的是如何在XAML中绑定分组。

我想使用嵌套的<ItemsControl>控件,外部用于列出国家/地区名称,而内部用于遍历该国家/地区的分组客户。问题在于绑定到IGrouping组

可以这样做,如果是这样,绑定语法会是什么样的?

1 个答案:

答案 0 :(得分:0)

您可以使用HierarchicalDataTemplate。例如,如果要将TreeView绑定到结果,则可以执行以下操作:

<TreeView ItemsSource="{Binding Groups}">
    <TreeView.ItemTemplate>
        <HierarchicalDataTemplate ItemsSource="{Binding}">
            <TextBlock Text="{Binding Key}" />
        </HierarchicalDataTemplate>
    </TreeView.ItemTemplate>
</TreeView>