struct Drink
{
public string Name { get; private set; }
public int Popularity { get; private set; }
public Drink ( string name, int popularity )
: this ( )
{
this.Name = name;
this.Popularity = popularity;
}
}
List<Drink> coldDrinks = new List<Drink> ( ){
new Drink ( "Water", 1 ),
new Drink ( "Fanta", 2 ),
new Drink ( "Sprite", 3 ),
new Drink ( "Coke", 4 ),
new Drink ( "Milk", 5 ) };
}
}
So that I can see the Name property for treeview item names.
Reed has already covered the “build your own XAML” approach, but just to provide an illustration of the FrameworkElementFactory approach, it would look something like this.
First, create the FEF:
Then create a DataTemplate with its VisualTree set to that factory:
Although as Reed notes the FrameworkElementFactory approach is officially deprecated, it is still reasonably widely used, I guess because building XAML strings feels so kludgy. (Though the FEF approach rapidly becomes insanely complicated if you have a non-trivial template…!)