나는 데이터 바인딩 된 TreeView 있습니다. TreeViewItems를 확장하고 싶습니다. 그러나 말할 수는 있습니다.WPF Treeview 특정 깊이로만 확장 하시겠습니까?
일반적으로 TreeViewItem.ExpandSubtree()를 발행 할 것이지만 모든 것이 확장되어서 매우 간단합니다. ? 여기
는 처음이다 내가 뭘하려합니다, 나는 아래의 방법을 만든 후 3private void ExpandTree(ItemContainerGenerator gen, ItemCollection items, int depth)
{
depth--;
foreach (var item in items)
{
TreeViewItem itm = (TreeViewItem)gen.ContainerFromItem(item);
if (itm == null) continue;
itm.IsExpanded = true;
if(depth!=0 && itm.Items.Count > 0) ExpandTree(itm.ItemContainerGenerator,itm.Items,depth);
}
}
문제의 깊이, 트 리뷰에서 항목을 수집 그것은 내 트 리뷰를 ItemContainerGenerator를 전달하고있다 재귀 적으로 모든 하위 항목에 대한 ItemContainerGenerator를 다시 호출하는 시점은 "NotStarted"상태이며 호출 될 때마다 null을 반환합니다. 내가 덫을 놓는 동안 그것은 나무가 단지 1의 깊이로만 열리고 내가 원하는 3이 아니라는 것을 의미합니다.
무엇이 여기에 있습니까?