I'v tried to follow a few of the how to do it but I do not get any data in my controller.
The code below is my latest attempt. If I create RadTreeViewItems in my ViewModel and then set them directly to the ItemsSource the treview is populated.
Can anyone see if I am missing something?
<UserControl.Resources>
<viewmodels:FilterViewModel x:Key="FVM" />
<DataTemplate x:Key="QualifierHDT"
DataType="{x:Type models:Qualifier}">
<TextBlock Text="{Binding Name}" />
</DataTemplate>
<HierarchicalDataTemplate x:Key="ComponentHDT"
DataType="{x:Type models:Component}"
ItemsSource="{Binding Components}"
ItemTemplate="{StaticResource QualifierHDT}">
<TextBlock Text="{Binding Name}" />
</HierarchicalDataTemplate>
<HierarchicalDataTemplate x:Key="SystemCollectionHDT"
DataType="{x:Type models:SystemCollection}"
ItemsSource="{Binding SystemCollections}"
ItemTemplate="{StaticResource ComponentHDT}">
<TextBlock Text="{Binding Name}" />
</HierarchicalDataTemplate>
<HierarchicalDataTemplate x:Key="BuildingHDT"
DataType="{x:Type models:Building}"
ItemsSource="{Binding Buildings}"
ItemTemplate="{StaticResource SystemCollectionHDT}">
<TextBlock Text="{Binding Name}" />
</HierarchicalDataTemplate>
<HierarchicalDataTemplate x:Key="AreaHDT"
DataType="{x:Type models:Area}"
ItemsSource="{Binding Areas}"
ItemTemplate="{StaticResource BuildingHDT}">
<TextBlock Text="{Binding Name}" />
</HierarchicalDataTemplate>
<Style x:Key="ItemContainerStyle" TargetType="{x:Type telerik:RadTreeViewItem}">
<Setter Property="IsSelected" Value="{Binding Path=Selected}"/>
<Setter Property="IsExpanded" Value="{Binding Path=Expanded}"/>
</Style>
<helpers:FilterViewTemplateSelector x:Key="myDataTemplateSelector"
AreaTemplate="{StaticResource AreaHDT}"
BuildingTemplate="{StaticResource BuildingHDT}"
SystemCollectionTemplate="{StaticResource SystemCollectionHDT}"
ComponentTemplate="{StaticResource ComponentHDT}"
QualifierTemplate="{StaticResource QualifierHDT}"/>
</UserControl.Resources>
<telerik:RadTreeView MinWidth="200px"
ItemsSource="{Binding Source={StaticResource FVM}}"
ItemTemplate="{StaticResource AreaHDT}"
ItemContainerStyle="{StaticResource ItemContainerStyle}"
ItemTemplateSelector="{StaticResource myDataTemplateSelector}">
</telerik:RadTreeView>
Class structure
Class Area
string Name;
ICollection<Building> buildings
Class Building
string Name:
ICollection<SystemCollection> SystemCollections
Class SystemCollection
string Name;
ICollection<Componennt> Components
Class Component
string Name;
ICollection<Qualifier> Qualifiers
Class Qualifier
String Name;