WPF-призма для доступа к элементам вида из оболочки - PullRequest
0 голосов
/ 30 июня 2010

В моем приложении есть оболочка с несколькими кнопками и вкладками и несколькими модулями.Каждый модуль имеет представление с некоторыми элементами, такими как сетки данных, панели стека, текстовые поля и т. Д. Все они имеют атрибут name.Теперь, когда я запускаю событие в оболочке (например, нажимаю кнопку), я хотел бы иметь возможность что-то с этими элементами (например, очистить всю информацию, написанную пользователем в предоставленных текстовых полях).Проблема в том, что оболочка не видит эти элементы и не может их распознать.Есть ли способ получить к ним доступ?

Спасибо за любые предложения.

1 Ответ

1 голос
/ 30 июня 2010

Я бы посоветовал вам воспользоваться подходом, аналогичным тому, что делает эталонная реализация Stocktrader с CompositeCommands.По сути, CompositeCommand - это реализация ICommand, которая содержит набор других ICommand.В RI CompositeCommands представлены как статические свойства для централизованно доступного класса.

В вашем случае вы можете использовать составную ClearCommand.Модель представления для оболочки представит это представлению оболочки, так что вы можете подключить к ней, скажем, свою кнопку Очистить.

Модели представления для различных модулей затем подключатся к этой команде ClearCommand:

GlobalCommands.ClearCommand.RegisterCommand(new DelegateCommand(x => ClearAllFields()));
...