1.首先构造实体类Team
public class Team { public Team(string name) { this.Name = name; } public string Name { get; set; } }
2.构造实体类
public class Division { public Division(string name) { this.Name = name; this.Teams = new ObservableCollection<Team>(); } public string Name { get; set; } public ObservableCollection<Team> Teams { get; set; } }
3.构造实体类League
public class League { public League(string name) { this.Name = name; this.Divisions = new ObservableCollection<Division>(); } public string Name { get; set; } public ObservableCollection<Division> Divisions { get; set; } }
4.构造一个提供数据的类RadTreeViewSampleData
public class RadTreeViewSampleData { public RadTreeViewSampleData() { this.InitializeLeaguesDataSource(); } public ObservableCollection<League> LeaguesDataSource { get; set; } private void InitializeLeaguesDataSource() { this.LeaguesDataSource = new ObservableCollection<League>(); League l; Division d; this.LeaguesDataSource.Add(l = new League("League A")); l.Divisions.Add((d = new Division("Division A"))); d.Teams.Add(new Team("Team I")); d.Teams.Add(new Team("Team II")); d.Teams.Add(new Team("Team III")); d.Teams.Add(new Team("Team IV")); d.Teams.Add(new Team("Team V")); l.Divisions.Add((d = new Division("Division B"))); d.Teams.Add(new Team("Team Blue")); d.Teams.Add(new Team("Team Red")); d.Teams.Add(new Team("Team Yellow")); d.Teams.Add(new Team("Team Green")); d.Teams.Add(new Team("Team Orange")); l.Divisions.Add((d = new Division("Division C"))); d.Teams.Add(new Team("Team East")); d.Teams.Add(new Team("Team West")); d.Teams.Add(new Team("Team north")); d.Teams.Add(new Team("Team South")); this.LeaguesDataSource.Add(l = new League("League B")); l.Divisions.Add((d = new Division("Division A"))); d.Teams.Add(new Team("Team 1")); d.Teams.Add(new Team("Team 2")); d.Teams.Add(new Team("Team 3")); d.Teams.Add(new Team("Team 4")); d.Teams.Add(new Team("Team 5")); l.Divisions.Add((d = new Division("Division B"))); d.Teams.Add(new Team("Team Diamond")); d.Teams.Add(new Team("Team Heart")); d.Teams.Add(new Team("Team Club")); d.Teams.Add(new Team("Team Spade")); l.Divisions.Add((d = new Division("Division C"))); d.Teams.Add(new Team("Team Alpha")); d.Teams.Add(new Team("Team Beta")); d.Teams.Add(new Team("Team Gamma")); d.Teams.Add(new Team("Team Delta")); d.Teams.Add(new Team("Team Epsilon")); } }
5.在页面上绑定数据
<UserControl.Resources> <sampleData:RadTreeViewSampleData x:Key="DataSource"/> <DataTemplate x:Key="Team"> <TextBlock Text="{Binding Name}" /> </DataTemplate> <telerik:HierarchicalDataTemplate x:Key="Division" ItemTemplate="{StaticResource Team}" ItemsSource="{Binding Teams}"> <TextBlock Text="{Binding Name}" /> </telerik:HierarchicalDataTemplate> <telerik:HierarchicalDataTemplate x:Key="League" ItemTemplate="{StaticResource Division}" ItemsSource="{Binding Divisions}"> <TextBlock Text="{Binding Name}" /> </telerik:HierarchicalDataTemplate> </UserControl.Resources> <Grid x:Name="LayoutRoot"> <telerik:RadTreeView ItemsSource="{Binding Source={StaticResource DataSource},Path=LeaguesDataSource}" ItemTemplate="{StaticResource League}" /> </Grid>
6.效果
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。