我有一个绑定到 CollectionViewSource 的 ItemControl。ItemControl 项目被分组然后呈现在数据模板中。我想要实现的是这样的:
-A--------------
| Aa... |
| Aaaa... |
----------------
-B--------------
| Bb... |
| Bbb... |
----------------
这是我的代码:
XAML
<CollectionViewSource x:Key="itembyAlpha" Source="{Binding listItem}">
<CollectionViewSource.GroupDescriptions>
<PropertyGroupDescription PropertyName="initial" />
</CollectionViewSource.GroupDescriptions>
</CollectionViewSource>
<ItemsControl ItemsSource="{Binding Source={StaticResource itembyAlpha}}">
<!--GroupStyle-->
<ItemsControl.GroupStyle>
<GroupStyle>
<GroupStyle.ContainerStyle>
<Style TargetType="{x:Type GroupItem}">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type GroupItem}">
<GroupBox Header="{Binding initial}">
<ItemsPresenter />
</GroupBox>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
</GroupStyle.ContainerStyle>
</GroupStyle>
</ItemsControl.GroupStyle>
<!--Item Template-->
<ItemsControl.ItemTemplate>
<DataTemplate>
<TextBlock Text="{Binding title}"/>
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>
C#
public class Movie
{
public string id { get; set; }
public string title { get; set; }
public string initial { get; set; }
}
List<Movie> lst;
public List<Movie> listItem
{
get { return lst; }
set { lst = value; }
}
我的问题是,这部分代码似乎不起作用:
<GroupBox Header="{Binding initial}">
<ItemsPresenter />
</GroupBox>
当我运行我的程序时,结果是这样的:
- --------------
| Aa... |
| Aaaa... |
----------------
- --------------
| Bb... |
| Bbb... |
----------------
GroupBox 的标题是空白的。似乎绑定不起作用。有人可以帮我吗...
之前谢谢。