KnowledgeHub
Questions
Tags
Users
Search
Alex Rivera
|
Logout
Edit Question
Title
Body
I'm adding TreeViewItems manually in code behind and would like to use a DataTemplate to display them but can't figure out how to. I'm hoping to do something like this but the items are displayed as empty headers. What am I doing wrong? XAML <Window x:Class="TreeTest.WindowTree" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" Title="WindowTree" Height="300" Width="300"> <Grid> <TreeView Name="_treeView"> <TreeView.ItemTemplate> <DataTemplate> <StackPanel Orientation="Horizontal"> <TextBlock Text="{Binding Path=Name}" /> <TextBlock Text="{Binding Path=Age}" /> </StackPanel> </DataTemplate> </TreeView.ItemTemplate> </TreeView> </Grid> </Window> Behind code using System.Windows; using System.Windows.Controls; namespace TreeTest { public partial class WindowTree : Window { public WindowTree() { InitializeComponent(); TreeViewItem itemBob = new TreeViewItem(); itemBob.DataContext = new Person() { Name = "Bob", Age = 34 }; TreeViewItem itemSally = new TreeViewItem(); itemSally.DataContext = new Person() { Name = "Sally", Age = 28 }; ; TreeViewItem itemJoe = new TreeViewItem(); itemJoe.DataContext = new Person() { Name = "Joe", Age = 15 }; ; itemSally.Items.Add(itemJoe); _treeView.Items.Add(itemBob); _treeView.Items.Add(itemSally); } } public class Person { public string Name { get; set; } public int Age { get; set; } } }
Tags (comma-separated)
Save Edits
Cancel