WPF - 组样式:我们只能绑定到"名称"属性吗?

Hus*_*lil 7 .net c# wpf .net-4.0

我正在尝试创建一个ItemsControl,负责显示按元数据排序的各种项目.每个项目可以有多个元数据.例如,"Conversation"类型的项可以具有"Chapter","Act"和"Volume"元数据.

在搜索分组在WPF中的工作方式后,我发现了GroupStyles和PropertyGroupDescription类.

我创建了自己的类,它继承自PropertyGroupDescription并返回"Metadata"类型的对象.

无论如何,在我的ItemsControl的GroupStyle DataTemplate中,我可以绑定到返回的对象(即:"元数据"对象),然后按我的意愿显示其属性?还是我被迫绑定到"姓名"?

换一种说法:

<ItemsControl.GroupStyle>
    <GroupStyle>
        <GroupStyle.HeaderTemplate>
            <DataTemplate>
                  Am I forced to bind to "Name" here ?
            </DataTemplate>
        </GroupStyle.HeaderTemplate>
    </GroupStyle>
</ItemsControl.GroupStyle>
Run Code Online (Sandbox Code Playgroud)

LPL*_*LPL 14

默认情况下DataContext,GroupStyle您可以绑定到此CollectionViewGroup属性.但当然,BindingSource如果需要,您可以设置任何其他.

如果您希望组中的第一个对象使用:

<TextBlock Text="{Binding Path=Items[0].YourStringProperty}" />
Run Code Online (Sandbox Code Playgroud)