开发者

TreeView binding issue in WPF

Consider the following data structure:

List<Person> People;
class Person { 
  开发者_StackOverflowList<Car> Cars; 
  List<Hobby> Hobbies;
}

I want to bind a TreeView to this structure. And it should look like this:

People
> Frank
  > Cars
    > BMW
    > Ford
  > Hobbies
    > Tennis
    > Golf
> Jane
  > Cars
  > Hobbies

How can this be achieved in XAML? Here's what I've got so far:

<TreeView>
  <TreeView.Resources>
    <DataTemplate x:Key="PersonTemplate">
      <TextBlock Header="{Binding Name}">
        <TextBlock.ContextMenu>
          <ContextMenu>
            <MenuItem Header="Remove" />
          </ContextMenu>
        </TextBlock.ContextMenu>
      </TextBlock>
    </DataTemplate>
  </TreeView.Resources>

  <TreeViewItem Header="{Binding Name}"IsExpanded="True" >
    <TreeViewItem Header="People" 
             ItemsSource="{Binding People}"
            ItemTemplate="{StaticResource PersonTemplate}">
    </TreeViewItem>
  </TreeViewItem>
</TreeView>

This is a follow up question to binding-a-treeview-with-contextmenu-in-xaml


This is a great way to get started using MVVM for treeview binding:

http://www.codeproject.com/KB/WPF/TreeViewWithViewModel.aspx

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜