动态设置TreeViewItems ItemTemplate

时间:2010-09-20 14:05:25

标签: c# wpf silverlight

我有一个TreeView,我以递归的方式构建代码。我想更改每个TreeViewItem的模板,以便我可以将图像等添加到标题中。我已经尝试通过在XAML

中创建静态资源来设置TreeView项的ItemTemplate
<DataTemplate x:Key="TreeViewItemControlTemplate">
      <sdk:TreeViewItem Background="Purple" >
        <TextBlock Text="Foo"></TextBlock>
      </sdk:TreeViewItem>
    </DataTemplate>

然后将其用于在代码中创建的每个节点,如此

myNode.ItemTemplate = DirectCast(Me.Resources("TreeViewItemControlTemplate"), DataTemplate)

我认为这会改变项目的外观(在这个例子中,只是创建一个带有紫色背景的空TreeViewItems的加载)。相反,TreeView只是忽略这些模板,并正常绘制它。

关于我做错了什么想法?

1 个答案:

答案 0 :(得分:0)

刚刚发现我需要设置HeaderTemplate而不是ItemTemplate。