欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 教育 > 培训 > WPF 数据分组显示

WPF 数据分组显示

2024/10/24 8:32:45 来源:https://blog.csdn.net/qq_43024228/article/details/139858521  浏览:    关键词:WPF 数据分组显示

WPF 数据分组显示

效果展示:
在这里插入图片描述
Student类:

public class Student
{public string Name { get; set; }public string Class { get; set; }public int Age { get; set; }
}

MainWindow.xaml.cs

public partial class MainWindow : Window
{private ObservableCollection<Student> students;public IEnumerable<IGrouping<string,Student>> GroupeStudent { get; set; }public MainWindow(){InitializeComponent();students = new ObservableCollection<Student>(){new Student(){ Name = "赵一", Class = "初中", Age = 14},new Student(){ Name = "钱二", Class = "小学", Age = 9},new Student(){ Name = "孙三", Class = "高中", Age = 16},new Student(){ Name = "李四", Class = "初中", Age = 15},new Student(){ Name = "周五", Class = "高中", Age = 17},new Student(){ Name = "吴六", Class = "高中", Age = 16},new Student(){ Name = "郑七", Class = "小学", Age = 8},new Student(){ Name = "王八", Class = "初中", Age = 14}};GroupeStudent = students.GroupBy(x => x.Class);this.DataContext = this;}
}

MainWindow.xaml

<Grid Margin="40"><ListView ItemsSource="{Binding GroupeStudent}"><ListView.ItemTemplate><DataTemplate ><Expander Header="{Binding Key}"><ListView ItemsSource="{Binding}"><ItemsControl.ItemTemplate><DataTemplate><StackPanel Orientation="Horizontal"><TextBlock Text="{Binding Name}" Margin="10"/><TextBlock Text="{Binding Class}" Margin="10"/><TextBlock Text="{Binding Age}" Margin="10"/></StackPanel></DataTemplate></ItemsControl.ItemTemplate></ListView></Expander></DataTemplate></ListView.ItemTemplate></ListView>
</Grid>

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com