0
자식 개체가있는 개체가 있고 linq을 사용하여 개체를로드합니다. 그리고 그것을 treeView의 itemssource에 할당합니다.wpf treeview가 자식 개체를 표시하지 않습니다.
treeView.DisplayMemberPath = "Name";
treeView.ItemsSource = tasks;
부모 노드 (task.name) 만 표시되므로 자녀 (TaskItems.name)를 추가하는 방법을 알 수 없습니다. 모든 예제는 xaml에서 HierarchicalData를 보여줍니다. 위 코드와 마찬가지로 코드 숨김으로 처리해야합니다. 가능한가?
public class Task
{
public int Id;
public string Name;
public bool IsActive;
public List<TaskItem> TaskItems = new List<TaskItem>();
}
public class TaskItem
{
public int TaskId;
public string Name;
public string Value;
}
--------------
var tasks1 = from t in xd.Descendants("taskheader")
select new Task
{
Id = (int)t.Element("id"),
Name = t.Element("name").Value,
IsActive = t.Element("isactive").Value == "1",
TaskItems = t.Elements("taskdetail").Select(e => new TaskItem
{
TaskId = (int)e.Element("taskid"),
Name = (string)e.Element("name"),
Value = (string)e.Element("value"),
}).ToList()
};
--------------
List<Task> tasks = new List<Task>();
tasks = tasks1;