我有一个列表列表对象:
List<List<Movie>> MovieList
此MovieList对象是电影列表的集合,每个电影都基于特定的电影类型。恩。 MovieList[0]
将是Comedy类型的电影列表,依此类推
现在我想将此列表列表 MovieList 对象绑定到XAML中的ListView。 ListView ItemSource将绑定到此MovieList对象,此ListView的每个ListViewItem将是一个ListView本身,绑定到特定类型的电影列表。恩。喜剧类型电影列表。此外,此内部List的每个ListViewItem都将绑定到该特定影片的Title属性。
请帮我设计XAML代码。
答案 0 :(得分:12)
MVVM解决方案:
<强>主窗口:强>
var moviesView = new MoviesView();
moviesView.DataContext = new MoviesViewModel { MovieList = ... };
<强> MoviesViewModel.cs:强>
public class MoviesViewModel
{
public ObservableCollection<List<Movie>> MovieList
{
get;
set;
}
}
<强> MoviesView.xaml 强>
<ListView ItemsSource="{Binding MovieList}">
<ListView.ItemTemplate>
<DataTemplate>
<ListView ItemsSource="{Binding}">
<ListView.ItemTemplate>
<DataTemplate>
<TextBlock Text="{Binding Title}" />
</DataTemplate>
</ListView.ItemTemplate>
</ListView>
</DataTemplate>
</ListView.ItemTemplate>
</ListView>