我得到了一個ItemsControl
(一個Treeview
或TreevieItem
),其中Item
充滿了我自己的模型。我不想以編程方式展開TreeView
。所以我試試這個:無法從Treeview中的物品找到容器
var model = itemsControl_.Items.Select(i => i as MyModel).Where(ftn => ftn != null && ftn.key = searchedKey));
現在我已經建立了一個想要展開的模型。我搜索容器展開它:
var tvi = itemsControl_.ItemContainerGenerator.ContainerFromItem(model) as TreeViewItem;
if(tvi!=null)
{
if (!tvi.IsExpanded)
{
tvi.IsExpanded = true;
}
}
有時tvi
是空的!?!
有人可以解釋我怎麼可能?
THX回答。我沒有啓用虛擬化,也不知道如何刪除它。但即使我的treeview包含一個項目,我也會得到這個bug。並且我正在直接子節點中搜索一個項目,所以它不是遞歸性的問題。 –