2010-09-20 32 views
0

我有一個TreeView,它是以遞歸方式在代碼中構建的。我想改變每個TreeViewItem的模板,以便我可以將圖像等添加到標題中。我曾嘗試用XAML中創建一個靜態的資源動態設置TreeViewItems ItemTemplate

<DataTemplate x:Key="TreeViewItemControlTemplate"> 
     <sdk:TreeViewItem Background="Purple" > 
     <TextBlock Text="Foo"></TextBlock> 
     </sdk:TreeViewItem> 
    </DataTemplate> 

,然後用它在代碼中創建像每個節點設置的TreeView項的ItemTemplate中如此

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

我會以爲這會再改變項目的外觀(在這個例子中,只需創建一個帶有紫色背景的空TreeViewItems負載)。相反,TreeView只是忽略這些模板,並按正常方式繪製。

任何想法,我在做什麼錯?

回答

0

剛發現我需要設置HeaderTemplate而不是ItemTemplate。