Я изучаю WPF и MVVM, чтобы оценить, хотим ли мы реализовать это в проекте.
Есть одна особенность, которую я совершенно не могу понять (моя книга по WPF еще не поступила).
Я прочитал статью Джоша Смита «Приложения WPF с шаблоном проектирования Model-View-ViewModel», а также его статью «Использование RoutedCommands с ViewModel в WPF».
Мое демонстрационное приложение несколько отличается от демонстрации Джоша Смита тем, что у меня есть пункты меню, которые не связаны напрямую с моделью основного вида, а скорее будут обрабатываться другими моделями представления.
Мое главное окно привязано к объекту MainViewModel, который предоставляет объект под названием View (производный от класса ViewModelBase и привязанный к главному окну через ContentControl). Этот объект View заменяется другими ViewModel, такими как CustomerViewModel, CustomersViewModel и т. Д. (Они отображаются с использованием представлений, определенных в моем словаре ресурсов:).
Все это хорошо и найти, но, поскольку я не хочу, чтобы пункты меню в моем главном окне (такие как «Создать», «Сохранить» и т. Д.) Должны были быть включены, отключены на основе представления, которое я нашел в статье Джоша Смита о шаблоне CommandSink (?) но он утверждает, что он устарел, и лучше использовать RelayCommand.
Теперь я в замешательстве, так как не могу понять, как реализовать эту функцию с помощью этого подхода.
Спасибо,
Винсент