У нас есть шаблоны, шаблоны элементов управления и шаблоны данных для элементов управления WPF.Я не знаю, есть ли еще типы (пожалуйста, дайте мне знать, если таковые имеются).Но когда использовать что?
Посмотрите на FrameworkTemplate производные типы:
FrameworkTemplate
ControlTemplate
Control
DataTemplate
ItemsPanelTemplate
ItemsPresenter
ItemsControl
PS: Как вы можете видеть, не существует просто "шаблона":)
HierarchicalDataTemplate
<UserControl.Resources> <HierarchicalDataTemplate DataType="{x:Type src:League}" ItemsSource="{Binding Path=Divisions}"> <TextBlock Text="{Binding Path=Name}"/> </HierarchicalDataTemplate> <HierarchicalDataTemplate DataType="{x:Type src:Division}" ItemsSource = "{Binding Path=Teams}"> <TextBlock Text="{Binding Path=Name}"/> </HierarchicalDataTemplate> <DataTemplate DataType="{x:Type src:Team}"> <TextBlock Text="{Binding Path=Name}"/> </DataTemplate> </UserControl.Resources>
Что касается того, когда что использовать - обычно вы можете определить, что вы переопределяетеОн будет иметь тип ControlTemplate или DataTemplate.