Добавление статического пункта меню, когда другие пункты меню связаны с данными в коллекции в mvvm

У меня есть пункт меню с именем "Авторы", чьи ItemsSource связан с ObservableCollection под названием CollectionOfAuthors. При нажатии на авторов открывается список имен авторов. Для каждого имени автора отображается список книг. Какие изменения мне нужно сделать, чтобы отобразить статический пункт меню "Создать новую книгу" вместе со списком других книг под каждым AuthorName.

Вот так: Автор ->AuthorName1-> Создать новую книгу, Книга 1, Книга 2, Книга 3

Вот мой существующий код:

MainWindow.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;}          
   }

0 ответов

Другие вопросы по тегам