代码之家  ›  专栏  ›  技术社区  ›  Ben

动态设置TreeViewItems ItemTemplate

  •  0
  • Ben  · 技术社区  · 14 年前

    我有一个树视图,我递归地在代码中构建它。我想改变每个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)
    

    我假设这会改变项目的外观(在本例中,只需创建一个带有紫色背景的空treeviewitem负载)。相反,TreeView只是忽略这些模板,并将其作为普通模板绘制。

    你知道我做错了什么吗?

    1 回复  |  直到 14 年前
        1
  •  0
  •   Ben    14 年前

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