我有一个项目集合。ObservableCollection<Channel> Channels;
每个都Channel包含名称和类别属性。我想在ListView. 另外,我想单击类别扩展器,然后显示带有频道名称的频道列表。
你能给我一些建议吗?
我有一个项目集合。ObservableCollection<Channel> Channels;
每个都Channel包含名称和类别属性。我想在ListView. 另外,我想单击类别扩展器,然后显示带有频道名称的频道列表。
你能给我一些建议吗?
为单个通道制作一个 DataTemplate:
<DataTemplate x:Key="ChannelTemplate">
    <Expander Header="{Binding Name}">
        <ListBox ItemsSource="{Binding CategoryProperties}">
            <ListBox.ItemTemplate>
                <DataTemplate>
                    <StackPanel>
                        <TextBlock Text="{Binding prop1}"/>
                        <TextBlock Text="{Binding prop2}"/>
                    </StackPanel>
                </DataTemplate>
            </ListBox>
        </ListBox>
    </Expander>
</DataTemplate>
然后在 ListBox/View 中使用它:
<ListBox ItemsSource="{Binding Channels}" ItemTemplate="{StaticResource ChannelTemplate}" />
这假定您将 Window/UserControl 的 DataContext 属性设置为包含名为 Channels 的属性的对象。
编辑
您可以尝试查看此示例: http: //msdn.microsoft.com/en-us/library/ms771309 (v=VS.90).aspx ,我认为这应该让您清楚地了解如何继续。