Я використовую WPF / Prism і маю оболонку з панеллю інструментів і областю з видом у ній (подання живе в іншому модулі). У поданні є деревне представлення, яке прив'язане до списку моделей подання.
У мене в панелі оболонок є кнопка панелі інструментів, я хочу видалити вибраний елемент перегляду дерева, який знаходиться у дочірній області / поданні.
Який найкращий спосіб зробити це?
Я думав про використання команди, але я не впевненийякщо є спосіб прив’язати команду кнопки панелі інструментів, яка живе в оболонці, до моделі подання у дочірньому поданні (що містить деревоподібний вигляд). Це можливо / найкращий спосіб зробити це?
Альтернативи, такі як використання агрегатора подій для публікації вибраного елементу, здаються правдоподібними, або якийсь тип служби, щоб опублікувати вибраний елемент перегляду дерева, також здається можливим.
Дякую.
Відповіді:
0 для відповіді № 1Ви можете визначити статичний CompositeCommand устатичний клас як частина інфраструктурного проекту / dll. Встановіть для цієї команди властивість команди кнопки панелі інструментів, використовуючи {x: Static}, і в моделі перегляду подання, що містить TreeView, ви визначаєте локальний DelegateCommand, який реєструєте в CompositeCommand.
Але якщо кнопка на панелі інструментів застосовується лише до цього конкретного вигляду з модуля, було б сенсом також визначити панель інструментів як область Призма і вставити кнопку як вигляд із модуля.