У меня есть класс узла, который я пытаюсь использовать для заполнения TreeView в Silverlight:TreeView загружает только верхние узлы
class TreeNode {
public string Caption {get; set;};
public IEnumerable<TreeNode> Children{get; set;}
}
Мой XAML выглядит следующим образом:
<controls:TreeView VerticalAlignment="Stretch"
x:Name="trv"
Height="150" >
<controls:TreeView.ItemTemplate>
<common:HierarchicalDataTemplate ItemsSource="{Binding Path=Children}" >
<TextBlock Text="{Binding Path=Caption}" />
</common:HierarchicalDataTemplate>
</controls:TreeView.ItemTemplate>
</controls:TreeView>
Однако только первый уровень нагрузки элементов. Если я заменю TextBlock на HerarchicalDataTemplate, в основном жестко кодируя глубину данных, отобразится 2-й уровень элементов. Однако тогда 3-го уровня нет.
Любые идеи?
я был ленивым загружая листовые узлы, и это немного путало. Переключается на загрузку всех узлов сразу, и все работает нормально. – 2010-12-03 14:25:34