我有以下代码将项目附加到树视图,MyTreeViewItem是一个继承自TreeViewItem的自定义类:
foreach (
Site Site in
SiteManager.SiteList.ToList()){
MyTreeViewItem HistoricalItem = new MyTreeViewItem();
HistoricalItem.LeftHeader.Content = Site.Profile.Username;
HistoricalItem.BtmSubHeader3.Content = String.Format("Total: {0, 8:N0}", Site.Total);
HistoricalItem.ItemsSource = Site.HistoricalList;
HistoricalTree.Items.Add(HistoricalItem);
}
以及以下相关的XAML代码::
<DataTemplate x:Key="HistoricalTemplate">
<StackPanel Orientation="Horizontal">
<Label
Content="{Binding Path=Timestamp}"
FontFamily="Consolas"
Width="80"
HorizontalContentAlignment="Right"
VerticalContentAlignment="Center"
Height="30"/>
<Label
Content="{Binding Path=HeaderText}"
FontFamily="Consolas"
Width="500"
HorizontalContentAlignment="Left"
VerticalContentAlignment="Center"
Height="30"/>
<Label
Content="{Binding Path=Total}"
FontFamily="Consolas"
Width="250"
HorizontalContentAlignment="Right"
VerticalContentAlignment="Center"
Height="30"/>
</StackPanel>
</DataTemplate>
<TreeView ItemsSource="{Binding }"
ItemTemplate="{StaticResource HistoricalTemplate}"
Margin="0,10,0,0"
Name="HistoricalTree"
Background="{x:Null}"
BorderBrush="{x:Null}"
FontFamily="Consolas"
FontSize="12">
</TreeView>
现在的问题是,当我运行这个程序时,模板实际上没有应用,我得到错误26:ItemTemplate被忽略。我不确定为什么被忽略或如何解决它。有任何想法吗?