Редактировать 2:
Это то, что я хочу сделать только с одним древовидным изображением:
мое древовидное представление со стилем внешнего вида http://img204.imageshack.us/img204/8218/sansreju.jpg
Редактировать:
Я хочу знать, как сделать древовидное представление с различными стилями расширителя с точки зрения уровня.В настоящее время я использую вложенные расширители.
Оригинальный вопрос:
Я пытаюсь получить WPF Treeview, который имеет разные стили расширителей в плане уровня.
На самом деле у меня есть следующее:
просмотр списка, который содержит различные шаблоны в терминах типа ojbect с помощью селектора
<ListView Name="MyTreeView" ItemTemplateSelector="{StaticResource Selector}">
<!-- Items Template -->
<HierarchicalDataTemplate x:Key="ItemsTemplate" ItemsSource="{Binding Childrens}">
<TextBlock Text="{Binding Name}" Margin="5,0" VerticalAlignment="Center"/>
</HierarchicalDataTemplate>
<!-- SubNode Template -->
<DataTemplate x:Key="SubNodeTemplate">
<Expander Style="{StaticResource SubExpander}">
<TreeView ItemsSource="{Binding Childrens}"
ItemTemplateSelector="{StaticResource Selector}"/>
</Expander>
</DataTemplate>
<!-- Node Template -->
<DataTemplate x:Key="NodeTemplate">
<Expander Style="{StaticResource MainViewExpander}">
<ListView ItemsSource="{Binding Childrens}"
ItemTemplateSelector="{StaticResource Selector}"/>
</Expander>
</DataTemplate>
И это код, который используется для объекта, используемого дляОтображение: я получил список (из IUpSlideItem) и применил его к MyTreeview.ItemsSource
Public Interface IUpSlideItem
Property Childrens As List(Of IUpSlideItem)
Property Name As String
End Interface
Public Class Item
Implements IUpSlideItem
Public Property Childrens As System.Collections.Generic.List(Of IUpSlideItem) Implements IUpSlideItem.Childrens
Public Property Name As String Implements IUpSlideItem.Name
End Class
Public Class Node
Implements IUpSlideItem
Public Property Childrens As System.Collections.Generic.List(Of IUpSlideItem) Implements IUpSlideItem.Childrens
Public Property Name As String Implements IUpSlideItem.Name
End Class
Теперь вопрос состоит в том, чтобы знать, если только 1 древовидное представление с другим стилем расширителя с точки зренияТип предмета возможен.Мне это нужно, потому что я хочу выбрать только один элемент.