【问题标题】:Change header for every group in datagrid wpf更改datagrid wpf中每个组的标题
【发布时间】:2010-05-06 09:19:04
【问题描述】:
我有一个数据网格,我在其中根据作者对行进行了分组。
我已将数据网格与 Author 类对象的集合绑定,
其中 Author 类具有 Book、Publication 和 Number of copies 三个属性,它们对应于 datagrid 中组中的列。
我的问题是我想为每个作者显示该组的“份数”总和。我没有得到的是我应该如何计算总和,因为它是针对一个组而不是针对每个对象或总数据网格的。
可以吗?
【问题讨论】:
标签:
wpf
binding
datagrid
grouping
【解决方案1】:
奇怪的是没有人回答这个问题,对于@Archie来说可能为时已晚,或者他很可能早就找到了答案。但是还是这样:
<GroupStyle.ContainerStyle>
<Style TargetType="{x:Type GroupItem}">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type GroupItem}">
<Expander Loaded="GroupHeaderExpander_Loaded">
<Expander.Header>
<StackPanel Orientation="Horizontal">
<TextBlock Text="Author: "/>
<TextBlock Text="{Binding Path=Name}"/>
<TextBlock Text=" "/>
<TextBlock Text="{Binding Path=ItemCount}"
FontStyle="Italic"/>
<TextBlock Text=" Books" FontStyle="Italic"/>
</StackPanel>
</Expander.Header>
<ItemsPresenter>
</ItemsPresenter>
</Expander>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
</GroupStyle.ContainerStyle>
ItemCount 将为您提供每组中的项目数。
HTH