0

我有一个名为“Authors”的菜单项,其 ItemsSource 绑定到名为 CollectionOfAuthors 的 ObservableCollection。单击作者打开作者姓名列表。对于每个作者姓名,都会显示书籍列表。我需要进行哪些修改才能显示静态菜单项“创建新书”以及每个作者名下的其他书籍列表。

像这样:作者-->作者名1-->创建新书,书1,书2,书3

这是我现有的代码:

主窗口.xaml

<MenuItem Header="Authors" ItemsSource="{Binding CollectionOfAuthors}">
    <MenuItem.ItemTemplate>
        <HierarchicalDataTemplate ItemsSource="{Binding Path=Books}">
            <TextBlock Text="{Binding AuthorName}"/>
            <HierarchicalDataTemplate.ItemTemplate>
                <DataTemplate>
                    <TextBlock Text="{Binding BookName}"/>
                </DataTemplate>
            </HierarchicalDataTemplate.ItemTemplate>
        </HierarchicalDataTemplate>
    </MenuItem.ItemTemplate>
</MenuItem>

MainWindowViewModel.cs

private ObservableCollection<Author> _collectionOfAuthors;

public ObservableCollection<Author> CollectionOfAuthors
{
    get { return _collectionOfAuthors; }
    set { SetProperty(ref _collectionOfAuthors, value); }
}

public class Author
{
   public string AuthorName {get; set;}

   private ObservableCollection<BookDetails> _Books;

   public ObservableCollection<BookDetails> Books
   {
       get { return _Books; }
       set { SetProperty(ref _Books, value); }
    }
}



 public class BookDetails
   {
     public string BookName{get; set;}          
   }
4

0 回答 0