0
的'根項目我有一個TreeView
:DataTemplateSelector.SelectTemplate沒有得到要求TreeView`
<TreeView Grid.Row="0" Grid.Column="2" ItemsSource="{Binding ResourceInstanceRootItems}" SelectedItemChanged="TreeView_SelectedItemChanged_2">
<TreeView.ItemTemplate>
<HierarchicalDataTemplate ItemsSource="{Binding Children}">
<HierarchicalDataTemplate.ItemTemplateSelector>
<local:ResourceInstDataTemplateSelector/>
</HierarchicalDataTemplate.ItemTemplateSelector>
</HierarchicalDataTemplate>
</TreeView.ItemTemplate>
</TreeView>
和DataTemplateSelector:
public class ResourceInstDataTemplateSelector : DataTemplateSelector
{
public override DataTemplate
SelectTemplate(object item, DependencyObject container)
{
FrameworkElement element = container as FrameworkElement;
if (element != null && item != null && item is ResourceInstance)
{
ResourceInstance ri = item as ResourceInstance;
DataTemplate temp = null;
if (ri.Parent == null)
temp = App.Current.Resources["parent_item"] as DataTemplate;
else if (ri.DependingInstance == null)
temp = App.Current.Resources["simple_instance"] as DataTemplate;
else
temp = App.Current.Resources["dependent_instance"] as DataTemplate;
return temp;
}
return null;
}
}
的問題是,ResourceInstDataTemplateSelector.SelectTemplate
不會被調用根物品在TreeView
,它們只顯示爲空箭頭。
謝謝。我感到羞愧,我錯過了。 – nakiya 2012-07-17 14:09:17