그냥 wpf로 시작합니다. 내가 트 리뷰에 객체 (계층) 폴더를WPF TreeView 계층 적 바인딩.
public class Folder
{
public Folder()
{
this.Name = string.Empty;
this.Modules = new ObservableCollection<Module>();
this.Folders = new List<Folder>();
this.HasChild = false;
}
public Folder(Folder parent)
{
this.Name = string.Empty;
this.Modules = new ObservableCollection<Module>();
this.Folders = new List<Folder>();
this.HasChild = false;
this.Parent = parent;
}
public bool HasChild { get; set; }
public string Name { get; set; }
public List<Folder> Folders { get; set; }
public ObservableCollection<Module> Modules { get; set; }
public Folder Parent { get; set; }
public Folder IfItemExists(string name)
{
foreach (Folder folder in Folders)
{
if (folder.Name == name)
{
return folder;
}
}
return null;
}
}
을 결합해야합니다. 나는 그런 짓을하고있다.
<TreeView Name="treeView" Margin="5">
<TreeView.ItemTemplate>
<HierarchicalDataTemplate ItemsSource="{Binding Path=Folders}" DataType="{x:Type ModulesUpToDateChecker:Folder}">
<HierarchicalDataTemplate.ItemTemplate>
<DataTemplate>
<TextBlock Text="{Binding Path=Name}"></TextBlock>
</DataTemplate>
</HierarchicalDataTemplate.ItemTemplate>
</HierarchicalDataTemplate>
</TreeView.ItemTemplate>
</TreeView>
그리고 그냥 비어있는 docpanel을 가지고있다. 객체는 채워집니다. Eche 아이는 같은 타입의 아이를가집니다.