上一篇 对Wpf/Silverlight Template 进行了总结,本篇继续上一篇,主要是介绍 HierarchicalDataTemplate 的使用方法。HierarchicalDataTemplate 继承于DataTemplate,被称之为"层级式数据模板",主要是应用层级比较明显数据集合,其典型的应用就是对TreeView控件进行数据绑定, 接下来就在Silverlight 5 下进行一下演示。最近有个卖凉茶的节目比较火,叫中国好声音,里面的导师和其歌手的分组就是个层级结构,我们暂且先用它来做个例子吧。
首先我们需要准备一下层级的数据集合,定义一个歌手类:
/// <summary>
/// 歌手类
/// </summary>
public class Singer
{
/// <summary>
/// 歌手编号
/// </summary>
public int SingerId { get; set; }
/// <summary>
/// 歌手名称
/// </summary>
public string SingerName { get; set; }
/// <summary>
/// 歌手头像
/// </summary>
public string SingerHeader { get; set; }
}
然后定义一个 导师类,导师类中有个属性就是歌手的集合,代码如下:
/// <summary>
/// 导师类
/// </summary>
public class Teacher
{
/// <summary>
/// 导师编号
/// </summary>
public int TeacherId { get; set; }
/// <summary>
/// 导师名称
/// </summary>
public string TeacherName { get; set; }
/// <summary>
/// 导师头像
/// </summary>
public string TeacherHeader { get; set; }
/// <summary>
/// 学生列表
/// </summary>
public ObservableCollection<Singer> SingerList { get; set; }
}